# maven 使用指南
## artifactory-oss 后台
[http://nokia.tianhaikj.tk:18082/ui/](http://nokia.tianhaikj.tk:18082/ui/)
### 管理员账号
user: admin
password: PiFTrK*2?@5JEaaATPnP
### 部署账号
user: deploy
password: M1J#VN6u5rpNGuVNCnUq
## maven 配置
复制 [settings.xml](settings.xml) 到 USER_HOME/.m2/ 下,或者在 USER_HOME/.m2/settings.xml 中添加以下配置,具体可参考 [settings.xml](settings.xml)
服务器认证配置
```xml
nokia
deploy
AP6pbyunPjxnzvYUjDzGDhnynYjg7bFwu2EZGh
```
阿里云仓库镜像配置
```xml
aliyunmaven
central,!nokia
阿里云公共仓库
https://maven.aliyun.com/repository/public
```
私有仓库镜像配置
```xml
nokia
nokia
http://nokia.tianhaikj.tk:18081/artifactory/maven-virtual
```
仓库配置
```xml
nokia
nokia
http://nokia.tianhaikj.tk:18081/artifactory/maven-virtual
true
always
nokia
http://nokia.tianhaikj.tk:18081/artifactory/maven-virtual
true
always
```
激活仓库配置
```xml
nokia
```
## 项目部署
如果项目需要被其他项目依赖需要部署到远程仓库,请在项目根目录下的 pom.xml 添加以下配置
```xml
nokia
http://nokia.tianhaikj.tk:18081/artifactory/maven-local-releases
nokia
http://nokia.tianhaikj.tk:18081/artifactory/maven-local-snapshots
```
如果是多模块项目,某个模块不需要部署到远程仓库,请在该模块的 pom.xml properties 标签内加入以下配置
```xml
true
```
部署命令
```shell
mvn clean deploy -B -U -T 1C '-Dmaven.test.skip=true -Dmaven.compile.fork=true'
```
版本号带 -SNAPSHOT 为快照版本,会部署到 maven-local-snapshots,快照版本可以重复部署便于测试;版本号不带 -SNAPSHOT 为发布版本,会部署到 maven-local-releases
## 引用依赖
```xml
groupId
artifactId
version
```
**生产环境禁止使用快照版本**
## 相关文档
- [Maven Repository](https://www.jfrog.com/confluence/display/JFROG/Maven+Repository)
- [Official Apache Maven documentation](https://maven.apache.org/guides/index.html)