2012-08-04 42 views
1

我无法在别处找到此问题的答案。设置Spring原型时重复出现的问题

我试图设置一个虚拟机来学习弹簧,检票和冬眠。我开始this Maven的原型,并用它像这样:

mvn archetype:generate -DarchetypeGroupId=nl.iprofs -DarchetypeArtifactId=wicket-spring-hibernate-quickstart -DarchetypeVersion=1.3 -DarchetypeRepository=http://www.iprofs.nl/repository/ -DinteractiveMode=false -DgroupId=me.sandbox -DartifactId=swh 
cd swh 
mvn install 
mvn eclipse:eclipse 
mvn jetty:run 

码头开始demoproject,它是可访问的,因为它应该是。

然后我将项目导入到最新的STS(SpringSourceToolsuite)中。但是当我部署应用程序,我得到这个错误:

SEVERE: Error configuring application listener of class org.springframework.web.util.Log4jConfigListener 
java.lang.ClassNotFoundException: org.springframework.web.util.Log4jConfigListener 

我只是不明白它。我是新来的春天,并没有使用maven很多,但我的印象是maven会自动解决依赖关系(如上述):/

在我的.classpath文件中,我发现除了许多其他)这些条目:

<classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-api/1.5.8/slf4j-api-1.5.8.jar" sourcepath="M2_REPO/org/slf4j/slf4j-api/1.5.8/slf4j-api-1.5.8-sources.jar"/> 
<classpathentry kind="var" path="M2_REPO/org/slf4j/slf4j-log4j12/1.4.2/slf4j-log4j12-1.4.2.jar" sourcepath="M2_REPO/org/slf4j/slf4j-log4j12/1.4.2/slf4j-log4j12-1.4.2-sources.jar"/> 
<classpathentry kind="var" path="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14.jar" sourcepath="M2_REPO/log4j/log4j/1.2.14/log4j-1.2.14-sources.jar"/> 

似乎M2_REPO是未定义的。我尝试将我的用户文件夹中的文件夹.m2/repository链接到项目文件夹,甚至添加指向相同位置的环境变量M2_REPO。 全部引用的文件位于文件夹结构中。但是我仍然得到相同的错误,并且Maven-jar中仍然有Classpath Dependency Validator的警告。

如果有任何这有助于:

我在64位的Xubuntu一个Oracle VM内运行此。 我从官方网站的安装源,Springsource Toolsuite .sh-installer 64Bit 2.9.2安装了maven2和openjdk-7-jdk。

我很困惑,因为我从来没有想过要创建一个简单的demo-archetype很难。我想我已经做了一个简单/天真的初学者错误。但我不知道。请帮帮我。

如果您需要更多信息,请让我知道。

+0

mvn eclipse有哪些用途:eclipse有? – khmarbaise 2012-08-04 16:58:30

回答

0

如果M2_REPO未定义,您通常应该在eclipse/STS中收到警告。为确保变量可用,您可以转至Preferences > Java > Build path > Classpath variables。如果你没有在这里定义的变量M2_REPO,你可以添加一个路径<path>/.m2/repository

我不能说你正在使用的maven-archetype很多。但也许你应该看看Spring roo,它可以帮助你创建一个新的Spring项目(创建配置文件,添加对pom.xml的依赖关系等)。 创建使用带有袋鼠冬眠一个新的Spring项目基本上可以写两个命令:

project --topLevelPackage com.company.project 
jpa setup --provider HIBERNATE --database MYSQL 
0

如果你有M2撑着设置为Eclipse,您可以设置M2_HOME那里。 如果你没有安装m2插件用于eclipse,那么只需将你的M2库添加到类路径