以下の手順に従いました。
git bash を使用して、Windows マシンでユーザー ID ABC の SSH キーを作成しました。
ユーザー ID root を使用して公開鍵を Linux サーバーにコピーしました:
scp ~/.ssh/id_rsa.pub root@Linuxserver:~/.ssh/.
パスワードを要求し、ファイルをコピーしました。
git bash を使用した SSH root@Linuxserver -> Linux サーバーのパスワードの入力 -> Linux サーバーへのログイン。
公開鍵を Linux サーバーの .ssh のauthorized_keys にコピー:
cat id_rsa.pub >> authorized_keys
git bash を使用した SSH root@Linuxserver -> パスワードを要求せずにログイン
Maven を介した SCP はシームレスに機能せず、常にパスワードを要求します。Linux root のパスワードでさえ機能せず、何度も何度もパスワードを要求し続けます。
Maven設定のファイルの下:
<server>
<id>Linuxserver</id>
<username>ABC</username>
<privateKey>${user.home}/.ssh/id_rsa</privateKey>
<filePermissions>664</filePermissions>
<directoryPermissions>775</directoryPermissions>
<configuration></configuration>
</server>
以下は、pom.xml からの抜粋です。
<extensions>
<extension>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>1.0-beta-6</version>
</extension>
</extensions>
...
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>wagon-maven-plugin</artifactId>
<version>1.0-beta-3</version>
<configuration>
<serverId>Linuxserver</serverId>
<fromFile>${project.parent.basedir}/projectname/filename</fromFile>
<url>scp://Linuxserver.com/testdirectory</url>
</configuration>
<executions>
<execution>
<id>upload-file-to-server</id>
<phase>verify</phase>
<goals>
<goal>upload-single</goal>
</goals>
</execution>
</executions>
</plugin>
ユーザーの操作なしで SCP が発生することを望んでいます。一言で言えば、Maven SCP が秘密鍵を取得しないことが問題のようです。