maven 各类问题汇总

自己在用的时候遇到了不少问题,为了忘记的时候随时来查,现在汇总下。全部来自网络上查找的,全部是转载。

首先是转载链接

http://blog.csdn.net/wangxifeng920/article/details/6332579

http://blog.csdn.net/liu_xing_hui/article/details/7552632

http://blessht.iteye.com/blog/1104450

http://blog.csdn.net/bruce128/article/details/41009271

http://blog.csdn.net/smilevt/article/details/8212075

http://www.cnblogs.com/qq78292959/p/3711497.html

http://blog.csdn.net/zhang6622056/article/details/9772951


一、maven常用命令

  1. 创建Maven的普通java项目:mvn archetype:create -DgroupId=com.codeline.commons -DartifactId=pjoName
  2. 创建Maven的Web项目:mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp
  3. 编译源代码:mvn compile (或者:mvn compiler:compile)
  4. 编译测试代码:mvn test-compile
  5. 运行测试:mvn test
  6. 产生site:mvn site
  7. 打包:mvn package
  8. 在本地Repository中安装jar:mvn install
  9. 清除产生的项目:mvn clean
  10. 生成eclipse项目:mvn eclipse:eclipse
  11. 生成idea项目:mvn idea:idea
  12. 组合使用goal命令,如只打包不测试:mvn -Dtest package
  13. 编译测试的内容:mvn test-compile
  14. 只打jar包: mvn jar:jar
  15. 只测试而不编译,也不测试编译:mvn test -skipping compile -skipping test-compile (这里要特别注意 -skipping 的灵活运用,当然也可以用于其他组合命令)
  16. 只编译不测试 mvn clean install -Dmaven.test.skip=true
  17. 清除eclipse的一些系统设置:mvn eclipse:clean
  18. 查看解析依赖mvn dependency:list

  19. 项目依赖属mvn dependency:tree

  20. 分析依赖Mvn dependency:analyze

二、maven 管理的jar下载不了

可能是nexus服务器上没有放对应的jar包


三、启动tomcat报错   java.lang.ClassNotFoundException: org.springframework.web.context.ContextLoader

到你的tomcat部署目录看下,应该是lib目录下缺jar包,原因有多种,解决方法有多种,我暂时没总结原因,先写解决方法,反正一个个试过去肯定能解决掉

①缓存问题,清空tomcat的work目录,然后重启。

 打开maven Web子模块的.project文件,<buildSpec>这个节点内部添加如下节点:

[html]  view plain copy
  1. <buildCommand>  
  2.             <name>org.eclipse.m2e.core.maven2Builder</name>  
  3.             <arguments>  
  4.             </arguments>  
  5.         </buildCommand>  
    

    <natures>节点下添加如下节点:

[html]  view plain copy
  1. <nature>org.eclipse.m2e.core.maven2Nature</nature>  

    再打开maven Web子模块的.classpath文件,添加如下节点:

[html]  view plain copy
  1. <classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">  
  2.         <attributes>  
  3.             <attribute name="maven.pomderived" value="true"/>  
  4.             <attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>  
  5.         </attributes>  
  6.     </classpathentry>  

    其实这个节点一般都是有的,但是一定要确认有没有这个属性<attribute name="org.eclipse.jst.component.dependency" value="/WEB-INF/lib"/>。

    然后在eclipse的项目上refresh一下maven项目,再在这个项目对应的tomcat上邮件点击”clean“。然后去自动发布的路径上,就会发现,所有maven依赖的jar包都出来了。

③(最好使的一种)

在我们配置好maven环境之后,当我们发布项目的时候会有不发布MAVEN依赖的JAR包的情况。这时候我们就需要如下配置:

maven 各类问题汇总_第1张图片

上图是我添加之后的。按照我圈红的部分去操作。正确的时候应该是有的。看下图

maven 各类问题汇总_第2张图片

经过上述操作之后。应该是有一个maven的一个Dependencies 。需要我们手动添加进去。如此便可以解决该问题。然后重新发布

你可能感兴趣的:(maven 各类问题汇总)