0

Linux サーバーにリモート リポジトリがあります。Linux マシンで作業している場合、scp を使用してリポジトリにアクセスするのに問題はありません。プロジェクトの Windows マシンで作業したいのですが、リモート リポジトリを動作させることができません。

私は次の指示に従いました: http://ekawas.blogspot.com/2007/02/maven-windows-and-deploying-to-remote.html

私のsettings.xmlにこれがあります

<servers>
<server>
  <id>ssh-repository</id>
  <username>username</username>
  <password>password</password>
  <privateKey>C:\Dev\programs\ssh_private_key.ppk</privateKey>
  <configuration>
    <sshExecutable>plink</sshExecutable>
    <scpExecutable>pscp</scpExecutable>
  </configuration>
</server>

  ...
  <profiles>
    <profile>
      <id>defaultProfile</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <repositories>
        <repository>
          <id>ssh-repository</id>
          <name>SSH-Repository</name>
          <url>scpexe://host:/path-to-rep</url>
        </repository>
      </repositories>
    </profile>
  </profiles>

コマンドプロンプトで pscp を作成するだけでは、問題はありません。mvn package または mvn clean を試すと、次のエラーが発生します。

Non-resolvable parent POM: Could not transfer artifact .... from/ro ssh-repository ...

私の settings.xml に何か問題がありますか?

4

2 に答える 2

0

誰かが同じ問題を抱えている場合にのみ。winscpを使用して、Windowsマシンからsshリポジトリに接続できました。

ここに手順があります

  1. winscpをインストールする
  2. winscp でホストに接続する
  3. winscp の設定 -> メモリ -> 設定を ini ファイルに保存
  4. ssh-rsa キーを know_hosts ファイル > username.ssh\known_hosts に追加します。
  5. \username.m2\settings.xml の settings.xml を編集します

    • sshExecutable と scpExecutable を使用しないでください
    • scp://hostname/location/to/repo を使用
于 2012-06-25T14:29:22.463 に答える
0

私ができる最善の推奨事項は、ArchivaArtifactory、またはNexus (アルファベット順) などのリポジトリ マネージャーを使用することです。これにより、実行しているプラ​​ットフォームに依存せずにビルドできます。さらに、設定の構成がより簡単になります。

于 2012-05-25T16:21:16.807 に答える