2017-08-03 14 views
0

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日以来です。

答えて

1

エラーが発生した後、nexus-staging-maven-pluginで使用されているwagon-ssh拡張子にエラーがあります。

クラッシュしたVMで使用されるバージョンがわからないので、nexus-staging-maven-pluginに関連付けられたwagon-sshバージョンを更新するだけで試しましたか?たとえば、次を使用します。

<plugin> 
    <groupId>org.sonatype.plugins</groupId> 
    <artifactId>nexus-staging-maven-plugin</artifactId> 
    <version>1.6.2</version> 
    <extensions>true</extensions> 
    <configuration> 
     <serverId>ossrh</serverId> 
     <nexusUrl>https://oss.sonatype.org/</nexusUrl> 
     <autoReleaseAfterClose>true</autoReleaseAfterClose> 
    </configuration> 
    <dependencies> 
     <dependency> 
     <groupId>org.apache.maven.wagon</groupId> 
     <artifactId>wagon-ssh</artifactId> 
     <version>2.12</version> 
     </dependency> 
    </dependencies> 
    </plugin> 
関連する問題