2014-04-28 95 views
1

我有一些問題試圖創建一個任務,建立一個特殊的文件,然後上傳到artifactory。發佈從gradle中的任務構建的自定義工件

繼承人的簡化版本:

apply plugin: 'maven-publish' 

task myTask { 
    ext.destination = file('myfile') 
    doLast { 
     // Here it should build the file 
    } 
} 

publishing { 
    repositories { 
     maven { 
      name 'ArtifactoryDevDirectory' 
      url 'http://artifactory/artifactory/repo-dev' 
      credentials { 
       username 'username' 
       password 'password' 
      } 
     } 
    } 

    publications { 
     MyJar(MavenPublication) { 
      artifactId "test" 
      version "1.0" 
      groupId "org.example" 
      artifact myTask.destination 
     } 
    } 
} 

這工作,但gradle publish不運行myTask。我嘗試添加

publishMyJarPublicationToArtifactoryDevDirectoryRepository.dependsOn myTask 

,但我只是得到:

Could not find property 'publishMyJarPublicationToArtifactoryDevDirectoryRepository' on root project 'test'. 

我試着擺弄神器,添加自定義神器配置和發佈,與其但也不能工作。

任何幫助將不勝感激。

回答

0
afterEvaluate { 
    publishMyJarPublicationToArtifactoryDevDirectoryRepository.dependsOn myTask 
} 

完成我想要的。