如何避免Maven构建在ssh主机真实性问题上停滞?

Pet*_*ahn 8 ssh maven-2 hudson

什么是使ssh主机真实性成为maven和hudsno构建问题的正确方法?

我有哈德森在VM上构建我的maven项目.当我的VM上的ESX服务器被征税时,我的一些工作将停滞在ssh主机真实性问题的循环中.主机位于已知的主机文件中,但在这些时间内,从属VM上的时钟已远离我的maven repo.

[INFO] Retrieving previous build number from snapshots
The authenticity of host 'maven.mycorp.com' can't be established.
DSA key fingerprint is 6d:....83.
Are you sure you want to continue connecting? (yes/no): The authenticity 
of host 'maven.mycorp.com' can't be established.
Run Code Online (Sandbox Code Playgroud)

除了禁用主机检查之外还有什么(CheckHostIP否)吗?

Bre*_*ter 10

如果你只想要它用于Maven,或者你没有使用scpexe://,你也可以在Maven设置中执行此操作.

<server>
  <id>some-repo-id</id>
  <configuration>
    <knownHostsProvider implementation="org.apache.maven.wagon.providers.ssh.knownhost.NullKnownHostProvider">
      <hostKeyChecking>no</hostKeyChecking>
    </knownHostsProvider>
  </configuration>
</server>
Run Code Online (Sandbox Code Playgroud)

  • 我注意到这个选项似乎不适用于很多人(包括我自己).http://stackoverflow.com/questions/8323040/maven-wagon-scp-is-not-able-to-establish-a-connection - 我得到的错误,"无法加载实现命中'... NullKnownHostsPorvider'".这是在我使用wagon-ssh-common 2.6(包含该类)扩展构建之后 (7认同)

Pas*_*ent 5

如果这不是一个问题,您可以设置StrictHostKeyCheckingno盲目连接到服务器(见本文).

使用以下-o选项在命令行上传递设置:

ssh -o StrictHostKeyChecking=no
Run Code Online (Sandbox Code Playgroud)

或者将其设置在您的~/.ssh/config:

StrictHostKeyChecking no
Run Code Online (Sandbox Code Playgroud)