Git常用命令
- 删除远程标签
git push origin :refs/tags/v0.9
- 删除远程分支
git push origin :refs/branch/dev
- 推送分支至远程
git push origin branch-name
- 配置代理
git config --global http.proxy http://127.0.0.1:1080
- 取消代理
git config --global --unset http.proxy
- 缓存密码
git config --global credential.helper store
Maven常用命令
Maven 父pom中dependencyManagement版本优先级高于传递依赖版本
jar本地安装
mvn install:install-file -Dfile=c:\kaptcha-{version}.jar -DgroupId=com.google.code -DartifactId=kaptcha -Dversion={version} -Dpackaging=jar上传nexus
mvn deploy:deploy-file -DgroupId=com.alipay.oceanbase -DartifactId=oceanbase-client -Dversion=1.1.10 -Dpackaging=jar -Dfile=G:\download\oceanbase-client-1.1.10.jar -Durl=http://192.168.4.2:8081/repository/maven-public/ -DrepositoryId=maven-public安装部分module及依赖:
mvn install -pl plantdata-sdk -am
mvn clean deploy -pl plantdata-sdk -am统一更新子模块的版本号:
mvn -N versions:update-child-modules
mvn clean package -P ${profile}Maven内置变量
${basedir} 项目根目录
${project.build.directory} 构建目录,缺省为target
${project.build.outputDirectory} 构建过程输出目录,缺省为target/classes
p r o j e c t . b u i l d . f i n a l N a m e 产出物名称,缺省为 {project.build.finalName} 产出物名称,缺省为project.build.finalName产出物名称,缺省为{project.artifactId}-${project.version}
${project.packaging} 打包类型,缺省为jar
${project.xxx} 当前pom文件的任意节点的内容scope
compile
默认的scope,表示 dependency 都可以在生命周期中使用。而且,这些dependencies 会传递到依赖的项目中。适用于所有阶段,会随着项目一起发布provided
跟compile相似,但是表明了dependency 由JDK或者容器提供,例如Servlet AP和一些Java EE APIs。这个scope 只能作用在编译和测试时,同时没有传递性。但是有继承性。runtime
表示dependency不作用在编译时,但会作用在运行和测试时,如JDBC驱动,适用运行和测试阶段。test
表示dependency作用在测试时,不作用在运行时。 只在测试时使用,用于编译和运行测试代码。不会随项目发布。system
跟provided 相似,但是在系统中要以外部JAR包的形式提供,maven不会在repository查找它。
子模块会继承父模块所有依赖,无论父模块的依赖声明范围是什么(test,provided都不会起作用)。
普通模块或普通项目之间,依赖范围会正常生效。test、provided范围的依赖不能被传递,compile会正常传递(默认scopes就是compile)
- 其它
- mvn package 来构建项目
- mvn clean 来清理项目
- mvn test 来执行单元测试
- mvn install 打包和部署项目到本地资源库
- mvn site 来为您的项目生成信息文档站点
- mvn site-deploy 通过WebDAV部署自动生成的文档站点到服务器
- mvn tomcat:deploy 以 WAR 文件部署到 Tomcat