Maven 教程之 settings.xml 详解settings.xml 简介settings.xml 有什么用从 settings.xml 的文件名就可以看出,它是用来设置 maven 参数的配置文件。settings.xml 中包含类似本地仓储位置、修改远程仓储服务器、认证信息等配置。
settings.xml 是 maven 的全局配置文件。
pom.xml 文件是本地项目配置文件。
settings.xml 文件位置settings.xml 文件一般存在于两个位置:
全局配置 - ${maven.home}/conf/settings.xml
用户配置 - ${user.home}/.m2/settings.xml
🔔 注意:用户配置优先于全局配置。${user.home} 和和所有其他系统属性只能在 3.0+版本上使用。请注意 windows 和 Linux 使用变量的区别。
配置优先级
重要:局部配置优先于全局配置。
配置优先级从高到低:pom.xml > user settings > ...
Maven 教程之发布 jar 到私服或中央仓库发布 jar 包到中央仓库
为了避免重复造轮子,相信每个 Java 程序员都想打造自己的脚手架或工具包(自己定制的往往才是最适合自己的)。那么如何将自己的脚手架发布到中央仓库呢?下面我们将一步步来实现。
在 Sonatype 创建 Issue(1)注册 Sonatype 账号
发布 Java 包到 Maven 中央仓库,首先需要在 Sonatype 网站创建一个工单(Issues)。
第一次使用这个网站的时候需要注册自己的帐号(这个帐号和密码需要记住,后面会用到)。
(2)创建 Issue
注册账号成功后,根据你 Java 包的功能分别写上Summary、Description、Group Id、SCM url以及Project URL等必要信息,可以参见我之前创建的 Issue:OSSRH-36187。
创建完之后需要等待 Sonatype 的工作人员审核处理,审核时间还是很快的,我的审核差不多等待了两小时。当 Issue 的 Status 变为RESOLVED后,就可以进行下一步操作了。
说明:如果你的 Group Id 填写的 ...
Maven 实战问题和最佳实践Maven 常见问题dependencies 和 dependencyManagement,plugins 和 pluginManagement 有什么区别dependencyManagement 是表示依赖 jar 包的声明,即你在项目中的 dependencyManagement 下声明了依赖,maven 不会加载该依赖,dependencyManagement 声明可以被继承。
dependencyManagement 的一个使用案例是当有父子项目的时候,父项目中可以利用 dependencyManagement 声明子项目中需要用到的依赖 jar 包,之后,当某个或者某几个子项目需要加载该插件的时候,就可以在子项目中 dependencies 节点只配置 groupId 和 artifactId 就可以完成插件的引用。
dependencyManagement 主要是为了统一管理插件,确保所有子项目使用的插件版本保持一致,类似的还有 plugins 和 pluginManagement。
IDEA 修改 JDK 版本后编译报错错误现象:
修改 JD ...
Ant 简易教程简介Apache Ant 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于 Java 环境中的软件开发。由 Apache 软件基金会所提供。
Ant 是纯 Java 语言编写的,所以具有很好的跨平台性。
下载和安装下载ant 的官方下载地址:http://ant.apache.org/bindownload.cgi
进入页面后,在下图的红色方框中可以下载最新版本。笔者下载的版本是 apache-ant-1.9.4。
配置环境变量配置环境变量(我的电脑 -> 属性 -> 高级 -> 环境变量)。
设置 ant 环境变量:
ANT_HOME C:/ apache-ant-1.9.4
path C:/ apache-ant-1.9.4/bin
classpath C:/apache-ant-1.9.4/lib
验证点击 开始 -> 运行 -> 输入 cmd
执行构建文件
输入如下命令:ant
如果出现如下内容,说明安装成功:
Buildfile: build.xml does not exist!Build ...