2016-06-21 41 views
0

我想發佈一個jar到artifactory。我這樣做:創建一個Jar類型的自定義插件任務

project.publishing.publications{ task -> 
      mavenJava(MavenPublication) { 
       archives makeJar 
       } 

現在,在makeJar中,我將jar從一個位置複製到另一個位置,只是將其重命名。這是一個複製類型的任務,但這不起作用,因爲我得到的錯誤是該任務應該是AbstractArchiveTask類似jar任務的類型。我想寫這樣一個任務:

class MakeJar extends Jar{ 
    @TaskAction 
    def createJar(){ 
<- code for creating jar -> 
} 

但是沒有這樣的gradle任務類型Jar。我需要幫助來撰寫這樣的任務。由於

回答

0

你不需要自定義任務類這樣一個簡單的功能:

apply plugin: 'java' 

task renameArtifact(type: Copy, dependsOn: 'jar') { 
    from jar.archivePath 

    rename '.*', 'renamedFile.jar' 

    into 'destDir' 
} 

將編譯

└── src 
    └── main 
     └── java 
      └── Main.java 

├── destDir 
│   └── renamedFile.jar 
相關問題