我的maven JAR應用程序由兩個模塊組成 - framefowrk和accounting - 以及一個聚合器。模塊框架定義了會計中使用的一些彈簧類。會計 包含一個main-Class和該框架作爲maven依賴項。我通過「Run as-> Java Application」在eclipse中運行Main-Class - 一切正常。現在,我嘗試使用使用mvn exec執行spring應用程序:java
MVN EXEC來執行主:JAVA -Dexec.mainClass = 「accounting.MyMainClass」
的命令產生以下輸出:
ava.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at org.codehaus.mojo.exec.ExecJavaMojo$1.run(ExecJavaMojo.java:297)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.io.IOException: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'jcrSessionFactory' is defined
... 6 more
Caused by: org.springframework.beans.factory.NoSuchBeanDefinitionException: No bean named 'jcrSessionFactory' is defined
at org.springframework.beans.factory.support.DefaultListableBeanFactory.getBeanDefinition(DefaultListableBeanFactory.java:529)
at org.springframework.beans.factory.support.AbstractBeanFactory.getMergedLocalBeanDefinition(AbstractBeanFactory.java:1094)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:276)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:196)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:1079)
...
顯然春天的東西在會計中不知道。我想知道「Run as-> Java Application」和mvn exec:java之間的區別在哪裏以及如何解決問題。
謝謝。
除了對這個主類的引用外,Eclipse中這個類的運行配置中是否有任何內容? JVM的參數,也許? – ATG
檢查錯誤消息:':org.springframework.beans.factory.NoSuchBeanDefinitionException:沒有名爲'jcrSessionFactory'的Bean被定義爲 ... 6 more'。 – khmarbaise
在eclipse Run As中沒有任何配置,全部是默認/空的。該jcrSessionFactory豆似乎也行:'<豆ID = 「jcrSessionFactory」 級= 「org.springmodules.jcr.JcrSessionFactory」> <屬性名= 「庫」 REF = 「資源庫」/> ' – leogl