自作Mavenリポジトリへデプロイする方法
自作Mavenリポジトリへ自作jarやwarをデプロイする方法のメモ。
quickstartのpomへちょいと追加。
mvn deployしたときの対象となるMavenリポジトリを設定。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <modelVersion>4.0.0</modelVersion> <groupId>study</groupId> <artifactId>sample</artifactId> <packaging>jar</packaging> <version>1.0-SNAPSHOT</version> <name>sample</name> <url>http://maven.apache.org</url> <!-- ここから追加 --> <distributionManagement> <!-- リリース用リポジトリ --> <repository> <id>nexus</id> <name>Releases</name> <url>http://[FQDN]:8081/nexus/content/repositories/releases/</url> </repository> <!-- スナップショット用リポジトリ --> <snapshotRepository> <id>nexus</id> <name>Snapshots</name> <url>http://[FQDN]:8081/nexus/content/repositories/snapshots/</url> </snapshotRepository> </distributionManagement> <!-- ここまで追加 --> <dependencies> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>3.8.1</version> <scope>test</scope> </dependency> </dependencies> </project>
これでデプロイ対象のMavenリポジトリの設定完了。
次に認証情報を追加する。
settings.xmlを下記のように設定。
<settings> <servers> <server> <id>nexus</id> <!-- デフォルトのデプロイユーザ --> <username>deployment</username> <password>deployment123</password> </server> </servers> <!-- proxyを突破しないといけない場合はこの設定も必要 --> <!-- 通常は不要 --> <proxies> <proxy> <id>optional</id> <active>true</active> <protocol>http</protocol> <username>[proxyのユーザ名]</username> <password>[proxyのユーザパスワード]</password> <host>[proxyサーバのFQDN]</host> <port>8080</port> <nonProxyHosts>[proxyを無視するホストのパターン]</nonProxyHosts> </proxy> </proxies> <!-- Nexusサーバがスタンドアロンの場合はこの設定も必要 --> <!-- 通常は不要 --> <mirrors> <mirror> <id>nexus</id> <mirrorOf>*</mirrorOf> <url>http://[FQDN]:8081/nexus/content/groups/public/</url> </mirror> </mirrors> </settings>
これで完了。
社内LANで行った場合エラーが出るかも。
settngs.xmlの
Mavenリポジトリの立て方は別途。
ちなみにnexusを使った。