BUG总结之Maven(2017.3~.4月)

来源:互联网 发布:图像算法工程师待遇 编辑:程序博客网 时间:2024/05/17 07:48

Date 2017.3 ~ .4
[注] bugs来源于平时coding,解决方案多参考其他博客

Bug01 maven改版本导致的bug,idle(Eclipse)改版本无法生效,需要到项目.setting中修改部分配置文件—-我当时的solution(有更好的方式,下文会说到)

bug demo:
在Eclipse中新建了一个Maven工程, 然后更改JDK版本为1.7, 结果每次使用Maven > Update project的时候JDK版本都恢复成1.5

原因如下
Maven官方文档有如下描述:
编译器插件用来编译项目的源文件从3.0版本开始, 而用来编译Java源文件的默认编译器是javax.tools.JavaCompiler (如果你是用的是java 1.7) ,且你想强制性的让插件使用javac,则必须配置插件选项f orceJavacCompilerUse.

同时需要注意的是目前source选项和target 选项的默认设置都是1.5, 与运行Maven时的JDK版本无关.

如果你想要改变这些默认设置, 可以参考 Setting the -source and -target of the Java Compiler中的描述来设置 source 和target 选项.

[注] 这是Maven已知的一个特性。除非在你的POM文件中显示的指定一个版本,否则会使用编译器默认的source/target版本1.5

总结:主要还是在于Eclipse中Maven的集成方式起到了关键作用, 它会从POM文件中生成项目的.project,.classpath以及.settings, 因此除非POM文件指定了正确的JDK版本, 否则你每次更新项目配置的时候它都会重置到1.5版本。


Bug02 maven改版本(2.3–>3.0)产生空目录’ WEBCONTENT’,删除对项目无影响(目前状况)

原因:未知,如果有谁知道的话麻烦告知下


Bug03 pom.xml报错

原因:
01 maven有些jar无法下载;
02 网络问题(公司服务器不稳定);
03 部分由Bug1引起
Solution:
01 配置私服(镜像);
02 个别下载不了的jar包从网上down,再放入仓库应的目录中;

Solution 01 配置私服
修改maven安装路径下的.setting文件(我的.setting.xml文件路径:E:\SoftWare01\Development_Tools_Profession\apache-maven-3.3.3\conf\settings.xml)
<setting></setting>标签对中加入:

<mirror>        <id>nexus-aliyun</id>        <mirrorOf>*</mirrorOf>        <name>Nexus aliyun</name>    <url>http://maven.aliyun.com/nexus/content/groups/public</url>    </mirror>  </mirrors>      

顺道把设置maven本地仓库的也说下

maven本地仓库一般默认安装在C盘User文件夹下(其实down的jar包所占内存也不大)
更改maven本地仓库:在.setting.xml文件中的标签对<setting></setting>加入自定义仓库路
如:

<localRepository>E:/.m2/repository</localRepository>
1 0
原创粉丝点击