maven入门项目报错
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了maven入门项目报错相关的知识,希望对你有一定的参考价值。
刚下载配置完maven,在命令行新建项目时报错:
建项目的命令为:mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook
报错信息为:
[INFO] Scanning for projects...
[INFO] Building Maven Stub Project (No POM) 1
[INFO] --- maven-archetype-plugin:2.3:create (default-cli) @ standalone-pom ---
[INFO] BUILD FAILURE
[INFO] Total time: 2.728 s
[INFO] Finished at: 2015-04-14T13:36:35+08:00
[INFO] Final Memory: 14M/108M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-archetype-plugin:2
.3:create (default-cli) on project standalone-pom: Unable to parse configuration
of mojo org.apache.maven.plugins:maven-archetype-plugin:2.3:create for paramete
r #: Cannot create instance of interface org.apache.maven.artifact.repository.Ar
tifactRepository -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e swit
ch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please rea
d the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/PluginConfigur
ationException
在stackoverflow找到解决方式如下
mvn archetype:generate -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false
修改start命令为generate
参考网址为http://stackoverflow.com/questions/29147329/unable-to-create-a-new-maven-hello-world-project
原因分析:create is deprecated in maven 3.0.5 and beyond,在maven3.0.5以上版本舍弃了create,使用generate生成项目 参考技术A 我在网上看的,自己试过也行;
把你的建项目的命令为:mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook中
archetype:create命令改成archetype:generate
就可以用了 参考技术B 我也遇到这个错误了 求解答
MyEclipse导入Maven项目pom文件第一行报错,运行Tomcat报Log4j错误--解决方法
问题描述:
前一段时间电脑第一次导入Maven项目,又是pom文件错,改好后又是运行Tomcat报Log4j错误,一直倒腾了近一个月程序才成功跑起来,太不容易。
也上网查了很长时间,没一个方法能解决我的问题的。特记下解决方法,希望能帮到像我这样的web刚入门者。
(刚入门,肯定有说的不对的地方,有错也希望能指出来,我改正)
前期操作:导入项目后clean,install,update,中会报错(因为我已经解决了,所以没有×)。
两问题对应解决方法:
1.pom文件第一行大红叉,说明是项目的文件指向不正确,看中error的Path,比如../webapp/..的错不用看,这些都是框架中的错,而框架不会错的,所以不用管,除去这些错,看项目本身的错误的地址,并找到这些有错误的文件,将其删掉(不用担心,这些在后期更新时会自动生成,而这些自动生成的就是正确的),除去框架的错的文件全部删完后,再update,再删除,多重复几次上述步骤,pom就不会报错了,成功解决~!
2.启动tomcat,跑不起来,总是有这个
然后卡住,翻译一下就是log4j没有初始化的意思,上网查错误信息,说是没有log4j配置文件,(前提:有log4j包,若没有log4j包,也有可能是缺包的原因,上网下载并添加即可),因此需要在类似如下目录下conf中新建文件,名为log4j.properties
并在其中添加内容
log4j.rootLogger=DEBUG , stdout
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%-d{yyyy-MM-dd HH\\:mm\\:ss} [%c]-[%p] %m%n
log4j.appender.stdout.Target = System.out
### Output to the log file ###
log4j.appender.D = org.apache.log4j.DailyRollingFileAppender
log4j.appender.D.File = ${scores.root}/WEB-INF/logs/error.log
log4j.appender.D.Append = true
log4j.appender.D.Threshold = ERROR
log4j.appender.D.layout = org.apache.log4j.PatternLayout
log4j.appender.D.layout.ConversionPattern = %-d{yyyy-MM-dd HH:mm:ss} [ %t:%r ] - [ %p ] %m%n
log4j.appender.ServerDailyRollingFile=org.apache.log4j.DailyRollingFileAppender
log4j.appender.ServerDailyRollingFile.DatePattern=\'.\'yyyy-MM-dd
log4j.appender.ServerDailyRollingFile.File=${scores.root}/WEB-INF/logs/error.log
log4j.appender.ServerDailyRollingFile.layout=org.apache.log4j.PatternLayout
log4j.appender.ServerDailyRollingFile.layout.ConversionPattern= %-d{yyyy-MM-dd HH\\:mm\\:ss} [ %t\\:%r ] - [ %p ] %m%n
log4j.appender.ServerDailyRollingFile.Append=true
log4j.logger.com.ibatis=debug
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug
log4j.logger.org.mybatis=DEBUG
log4j.logger.java.sql.Connection=debug
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug,stdout
com.ng.mapper=DEBUG
创建完成后,在类似如下目录中找到web.xml
查找是否有以下语句
<context-param>
<param-name>log4jConfigLocation</param-name>
<param-value>classpath:conf/log4j.properties</param-value>
</context-param>
<context-param>
<param-name>log4jRefreshInterval</param-name>
<param-value>60000</param-value>
</context-param>
<listener>
<listener-class>
org.springframework.web.util.Log4jConfigListener
</listener-class>
</listener>
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
如果有的话,首先查看语句是否完整,监听与声明顺序不能反,不然会报错;其次,查看代码其中的地址有没有错,地址一定是刚才添加log4j.properties配置文件的地址,否则会报Not Found log4j.properties的错误。
如果没有这些代码,就把上述代码加到web.xml中,保存,update,启动tomcat,终于运行成功!!
以上是关于maven入门项目报错的主要内容,如果未能解决你的问题,请参考以下文章