2016-10-26 3 views
0

Я пытаюсь передать аргумент из командной строки в задачу uploadArchives для загрузки артефактов в nexus. Проблема в том, что pom groupid не может правильно разрешить аргумент командной строки. Я использую следующую команду для запускаПараметры командной строки не читаются в задаче uploadArchives (свойства pom)

Gradle -Penvironment = dcdev4_106 -Pupload -PuserName = ххх -Ppassword = хххх uploadArchives

uploadArchives { 
repositories { 
mavenDeployer { 
configuration = configurations.archives 
repository(url: "http://repo.xxx.net/nexus/content/repositories/maven-internal-snapshot/"){ 
     if (project.hasProperty('upload')) { 
     authentication(userName: "${userName}", password: "${password}") 
     } 
    } 
    addFilter('artifact1') {artifact, file -> 
     artifact.name == 'artifact1' 
    } 
    addFilter('artifact2') {artifact, file -> 
     artifact.name == 'artifact2' 
    } 

    println "**** Inside uploading archives for ${environment}" 

    pom('artifact1').version = '1.0-SNAPSHOT' 
    //pom('artifact1').artifactId = '1.0-SNAPSHOT' 
    pom('artifact1').groupId = 'com.ngs.dcd.${environment}' 

Я получаю сообщение об ошибке на этой линии ПОМ ('artifact1') .groupId = 'com.ngs.dcd. $ {environment}', где аргумент $ environment не решен. Я также вижу, что это не вызывает никаких ошибок, и это хорошо печатает в приведенном выше заявлении на печать. Проблема заключается только при передаче в pom groupid. Не уверен, что если аргументы не могут быть переданы в свойство п или есть специальный синтаксис с этим

Благодарности

ответ

0

После создания нескольких маршрутов на использование соответствующего синтаксиса для этого, я, наконец, получил это работает со следующим синтаксисом.

pom ('artifact1'). GroupId = 'com.ngs.dcd' + '.' + project.getProperties(). окружающая среда

Смежные вопросы