2014-04-28 89 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 
} 

完成我想要的。