C'è un modo di avere Maven SCP lavoro carro in modo coerente su piattaforma Linux / Mac / windows?

StackOverflow https://stackoverflow.com/questions/5819775

  •  26-10-2019
  •  | 
  •  

Domanda

Data la scarsissima documentazione su SCP / SSH e Maven ho provato diversi approcci, in fondo che rientrano in due categorie principali: utilizzando carro scpexe e SCP carro. Di solito entrambi lavorano senza problemi sia su Linux e Mac, ma sulle finestre non ho mai trovato un modo per farlo funzionare su tutte le macchine.

approccio scpexe (dopo l'installazione completa stucco e aggiungendo al percorso) - Configurazione settings.xml:

<server>
    <id>internal</id>
    <username>******</username>
    <password>*******</password>
    <configuration>
        <sshExecutable>plink</sshExecutable>
        <scpExecutable>pscp</scpExecutable>
    </configuration>
</server>

approccio SCP - settings.xml:

 <server>
      <id>internal</id>
      <username>*********</username>
      <password>*********</password>
      <configuration>
           <StrictHostKeyChecking>ask</StrictHostKeyChecking>
      </configuration>
 </server>

Ho anche cercato di mettere StrictHostKeyChecking a "no", ma, rischi per la sicurezza a parte, non ha funzionato su una particolare macchina.

Qualcuno ha trovato un modo per utilizzare un repository ssh interna costantemente su tutte le macchine?

È stato utile?

Soluzione

Il Maven SSH carro utilizza JSch, il puro-Java implementazione di SSH, che funziona indipendentemente dal sistema operativo. (Forse questo non era il caso in cui tale domanda è stata originariamente pubblicato, ma è vero oggi.) Il documentazione Deploy plugin ha ancora una guida intitolata distribuzione di manufatti in un comando SSH esterna , ma questo approccio non è più necessario.

Ecco un esempio di configurazione che ho usato con successo da distribuire nel corso SCP per una macchina Linux da un sistema Windows 7 con Maven 3.0.4.

pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
  xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0
    http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>hello</groupId>
  <artifactId>hello</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>

  <name>Hello</name>

  <build>
    <extensions>
      <extension>
        <groupId>org.apache.maven.wagon</groupId>
        <artifactId>wagon-ssh</artifactId>
        <version>2.3</version>
      </extension>
    </extensions>
  </build>

  <distributionManagement>
    <repository>
      <id>my-ssh-repo</id>
      <url>scp://my.server.url/path/to/ssh-repo</url>
    </repository>
  </distributionManagement>

</project>

settings.xml:

<settings>
  <servers>
    <server>
      <id>my-ssh-repo</id>
      <username>myUser</username>
      <password>myPass</password>
    </server>
  </servers>
</settings>
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top