mvn clean install -Dmaven.test.skip=true -Dcheckstyle.skip=truejava
mvn help:describe -Dplugin=插件名称 -Ddetail 例如:“mvn help:describe -Dplugin=jar -Ddetail” 展现的就是maven-jar-plugin插件的使用详情apache
mvn dependency:tree安全
mvn help:effective-pommaven
mvn package -X 大写的X用于调试测试
java编译插件:spa
参数详解:插件
configuration-->source 指定要被编译的java源文件的版本调试
configuration-->target 指定将要编译出来的java的class文件的版本code
configuration-->skip 当这个值为true时,不编译测试代码blog
configuration-->compilerArgs-->compilerArg -verbose 输出编译器正在执行的操做的信息
-Xlint:unchecked 启用未经检查或不安全操做的警告@SuppressWarning
-Xlink:deprecation 启用使用已过期的类或方法的警告@SuppressWarning
-bootclasspath ${env.JAVA_HOME}/jre/lib/rt.jar指定编译源文件时所用的引导类
-extdirs ${env.JAVA_HOME}/jre/lib/ext 指定编译源文件时所用的扩展类
固然为何要指定-bootclasspath和-extdirs呢,最主要缘由就是交叉编译:
javac自己就是java应用程序,因此须要引导类和扩展类
目标程序也是java应用程序,因此也须要引导类和扩展类
默认状况下目标程序须要的引导类和扩展类就是javac的引导类和扩展类,可是若是目标程序须要的引导类和扩展类和javac的不同时,
目标程序的引导类的扩展类就须要用bootclasspath和extdirs指定
<plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.1</version> <configuration> <source>1.7</source> <target>1.7</target> <encoding>UTF-8</encoding> <compilerArgs> <arg>-verbose</arg> <arg>-Xlint:unchecked</arg> <arg>-Xlint:deprecation</arg> <arg>-bootclasspath</arg> <arg>${env.JAVA_HOME}/jre/lib/rt.jar</arg> </compilerArgs> </configuration> </plugin>