Maven
强制更新依赖
mvn clean install -e -U
-e详细异常
-U强制更新
打包并跳过测试
mvn clean install -Dmvn.skip.test=true
自定义变量名
NAME="WindchillDS"
FULLNAME="PTC Windchill Directory Server"
LOWERCASENAME="windchillds"
VERSIONQUALIFIER="Build_002"
mvn -Dproduct.name="$NAME" -Dproject.name="$FULLNAME" -DlowerCaseProductName="$LOWERCASENAME" -DdocHomepageUrl="$DOCHOMEPAGE" -DdocWikiUrl="$DOCWIKIURL" -DdocGuideRefUrl="$DOCGUIDEURL" -DdocGuideAdminUrl="$DOCGUIDEURL" -DparsedVersion.qualifier="$VERSIONQUALIFIER" -X install
-Dproject.version=12.0.50-SNAPSHOT
-Dproject.finalName=$TRAVIS_TAG
mvn clean package -P${DRONE_BRANCH} -DskipTests=true -Dproject.finalName=$TRAVIS_TAG
mvn clean package -Dmaven.test.skip=true
#将jar安装到本地maven库中:
mvn install:install-file -Dfile=jar包的位置 -DgroupId=上面的groupId -DartifactId=上面的artifactId -Dversion=上面的version -Dpackaging=jar
mvn install:install-file -Dfile=lib/hsf.services-1.6.1.jar -DgroupId=com.taobao.hsf -DartifactId=hsf.services -Dversion=1.6.1 -Dpackaging=jar
使用多个配置
mvn clean install -Dmaven.test.skip=true -P jdk8,int
## 指定war包名
mvn -Dwar.warName=ice package
跳过测试
在使用mvn package进行编译、打包时,Maven会执行src/test/java中的JUnit测试用例,有时为了跳过测试,会使用参数-DskipTests和-Dmaven.test.skip=true,这两个参数的主要区别是:
mvn package -DskipTests,不执行测试用例,但编译测试用例类生成相应的class文件至target/test-classes下。
mvn package -Dmaven.test.skip=true,不执行测试用例,也不编译测试用例类。
项目启用阿里云镜像 pom.xml
<repositories>
<repository>
<id>aliyun</id>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>aliyun</id>
<url>http://maven.aliyun.com/nexus/content/repositories/central/</url>
</pluginRepository>
</pluginRepositories>
全局使用阿里云镜像库的方法是修改 ~/.m2/settings.xml,在mirrors节点下添加
<id>nexus-aliyun</id>
<mirrorOf>central</mirrorOf>
<name>Nexus aliyun</name>
<url>http://maven.aliyun.com/nexus/content/repositories/central</url>