2017-11-19 8 views
0

SFTP를 통해 빌드 된 jar 파일을 모든 Ridersberry Pi에 업로드하고 싶습니다. 그래서 maven-deploy-plugin을 사용하려고했습니다.Maven 빌드 후에 음영 처리 된 병을 업로드하는 방법은 무엇입니까?

<plugin> 
    <artifactId>maven-deploy-plugin</artifactId> 
    <version>2.8</version> 
    <executions> 
     <execution> 
      <id>Raspberry Pi</id> 
      <phase>deploy</phase> 
      <goals> 
       <goal>deploy-file</goal> 
      </goals> 
      <configuration> 
       <pomFile>pom.xml</pomFile> 
       <file>target/${project.name}.jar</file> 
       <url>sftp://[email protected]/home/</url> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

이미 알 수 있듯이이 업로드 된 항아리 또한 내가 마차-ssh를 확장을 포함하고 나무 딸기를 정의 <finalName>${project.name}</finalName>

로 이름이 변경됩니다 음영 항아리입니다 : 같은

내 구성이 보인다 내가 MVN 실행하면

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

<distributionManagement> 
    <repository> 
     <id>Raspberry Pi</id> 
     <url>sftp://192.168.2.108/home</url> 
    </repository> 
</distributionManagement> 

그러나, : 파이는 배포 받는다는에만 g의 파일 경로에 라즈베리 파이 원래 항아리를 업로드합니다 roupId, artifactId 및 버전.

디렉토리가없는 단일 jar 파일 만 업로드하려면 어떻게해야합니까?

답변

0

배포 플러그인을 사용하면 Maven은 이슈를 artifact groupdId, artifactId 등의 이름을 가진 폴더에 자동으로 배포합니다.이 동작은 기본 제공되며 재정의 할 수 없으므로 수행 할 수있는 작업이 많지 않습니다. 당신이 Wagon plugin 직접 같은 구성으로 RPI에 SSH를 통해 업로드 할 수 있습니다 그러나

: 업로드가 배포 단계에 바인딩

<plugin> 
    <groupId>org.codehaus.mojo</groupId> 
    <artifactId>wagon-maven-plugin</artifactId> 
    <version>1.0</version> 
    <executions> 
     <execution> 
      <id>upload-raspberry-pi</id> 
      <phase>deploy</phase> 
      <goals> 
       <goal>upload-single/goal> 
      </goals> 
      <configuration> 
       <fromFile>target/${project.name}.jar</fromFile> 
       <url>sftp://192.168.2.108/home</url> 
      </configuration> 
     </execution> 
    </executions> 
</plugin> 

, 당신은 배포 플러그인에와 마찬가지로 mvn deploy를 실행할 수 있습니다 귀하의 JAR를 귀하의 컴퓨터에 업로드하십시오.

Maven 3을 사용하는 경우 프로젝트 종속성을 업데이트해야합니다. Usage 페이지 당 :

이 플러그인은 다음과 같은 이유로이 분포 도서관 누락 상자 에서 메이븐 3.0.x의 및 3.1.X 작동하지 않습니다

: 공유지-IO-2.X를, common-lang-2.x 및 jsoup-1.x. 누락 된 파일을 $ MAVEN_HOME/lib에 추가하려면 wagon : update-maven-3을 호출 할 수 있습니다. 자세한 내용은 WAGON-407을 참조하십시오.