scpを使用してnexusリポジトリにmavenプロジェクトのスナップショットをデプロイできるようにします。 ここに私のpom.xmlの現在の構成は、興味深い部分のためです:scpをスローするMavenデプロイメントNoSuchElementException
<distributionManagement>
<snapshotRepository>
<id>gforge.inria.fr-snapshot</id>
<name>inria-snapshots</name>
<url>scp://scm.gforge.inria.fr/home/groups/spoon/htdocs/repositories/snapshots</url>
</snapshotRepository>
<site>
<id>gforge.inria.fr-site</id>
<name>inria</name>
<url>scp://scm.gforge.inria.fr/home/groups/spoon/htdocs/mvnsites/spoon-core</url>
</site>
</distributionManagement>
[...]
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
</extension>
</extensions>
</build>
全体のpom.xmlがthere可能です。
我々は、我々のリポジトリに認証するための鍵のペアを使用しているので、私は~/.m2/settings.xml
に次のように入力します
[ERROR] Failed to execute goal org.sonatype.plugins:nexus-staging-maven-plugin:1.6.2:deploy (injected-nexus-deploy) on project spoon-core: Failed to deploy artifacts/metadata: Cannot access scp://scm.gforge.inria.fr/home/groups/spoon/htdocs/repositories/snapshots with type default using the available connector factories: BasicRepositoryConnectorFactory: Cannot access scp://scm.gforge.inria.fr/home/groups/spoon/htdocs/repositories/snapshots using the registered transporter factories: WagonTransporterFactory: java.util.NoSuchElementException
[ERROR] role: org.apache.maven.wagon.Wagon
[ERROR] roleHint: scp
:
<server>
<id>gforge.inria.fr-snapshot</id>
<username>XXXX</username>
<privateKey>/path/to/the/private/key</privateKey>
</server>
をそして私はmvn clean deploy
は、私は次のエラーを取得する起動したときデバッグオプションで実行すると、次のスタックトレースが表示されます。
java.util.NoSuchElementException
role: org.apache.maven.wagon.Wagon
roleHint: scp
org.codehaus.plexus.component.repository.exception.ComponentLookupException: java.util.NoSuchElementException
role: org.apache.maven.wagon.Wagon
roleHint: scp
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:267)
at org.codehaus.plexus.DefaultPlexusContainer.lookup(DefaultPlexusContainer.java:255)
at org.eclipse.aether.internal.transport.wagon.PlexusWagonProvider.lookup(PlexusWagonProvider.java:58)
at org.eclipse.aether.transport.wagon.WagonTransporter.lookupWagon(WagonTransporter.java:271)
at org.eclipse.aether.transport.wagon.WagonTransporter.<init>(WagonTransporter.java:115)
at org.eclipse.aether.transport.wagon.WagonTransporterFactory.newInstance(WagonTransporterFactory.java:127)
at org.eclipse.aether.internal.impl.DefaultTransporterProvider.newTransporter(DefaultTransporterProvider.java:110)
at org.eclipse.aether.connector.basic.BasicRepositoryConnector.<init>(BasicRepositoryConnector.java:115)
at org.eclipse.aether.connector.basic.BasicRepositoryConnectorFactory.newInstance(BasicRepositoryConnectorFactory.java:180)
at org.eclipse.aether.internal.impl.DefaultRepositoryConnectorProvider.newRepositoryConnector(DefaultRepositoryConnectorProvider.java:113)
at org.eclipse.aether.internal.impl.DefaultDeployer.deploy(DefaultDeployer.java:265)
私は、Maven 3.3.9とJava 8を使用しています(openjdkとOracle JDKでテストしましたが、同じ結果です)。
私のpom.xmlセットアップがうまくいくことは知っています。それは、仮想マシン上で何ヶ月も働いていました。悲しいことに、私はそのVMをセットアップしておらず、バックアップなしで最近失ったものです。このマシン上にあったjavaまたはmavenバージョンに関する情報はありません。
このVMは、jenkinsジョブを通じて、mvn deploy
を定期的に実行するために使用されています。このジョブの別のログについては、https://ci.inria.fr/sos/job/Spoon-Snapshot-Deployer/を参照してください。 7月28日以前はうまくいきました。私のエラーを示すログは8月2日以来です。