Maven 是否有一种方法可以确定工件在gradle';什么是发布任务?

Maven 是否有一种方法可以确定工件在gradle';什么是发布任务?,maven,gradle,Maven,Gradle,正如标题所说,有没有办法确定工件在gradle的发布任务中发布的位置?原因是,我想有这些信息,所以我可以发送一封电子邮件与网址的下载。发布不是问题-我已经通过maven publish实现了这一点。但是,似乎没有一种方法可以在构建过程中获取打印在屏幕上的信息 编辑: 例如,在出版时,我得到了 上传http://xxxxxxxxxx:9000/archiva/repository/snapshots/com/xxxxxxxxxx/mobile/xxxxxxxxxx/0.0.1-快照/xxxxxxx

正如标题所说,有没有办法确定工件在gradle的发布任务中发布的位置?原因是,我想有这些信息,所以我可以发送一封电子邮件与网址的下载。发布不是问题-我已经通过
maven publish
实现了这一点。但是,似乎没有一种方法可以在构建过程中获取打印在屏幕上的信息

编辑:

例如,在出版时,我得到了

上传http://xxxxxxxxxx:9000/archiva/repository/snapshots/com/xxxxxxxxxx/mobile/xxxxxxxxxx/0.0.1-快照/xxxxxxxxx-debug-unaligned-0.0.1-SNAPSHOT.apk


程序显然知道工件的确切发送位置。有没有办法将这些信息提取出来并用于其他任务?

您可以从任务本身获取这些信息。
maven publish
插件为每个存储库的每个工件创建一个发布任务

project.tasks.withType(PublishToMavenRepository).all { task ->
    task.doLast {
        def baseUrl = "${task.repository.url}/${task.publication.groupId.replace('.', '/')}/${task.publication.artifactId}/${task.publication.version}/${task.publication.artifactId}"
        task.publication.artifacts.each { artifact ->
            println "${baseUrl}${artifact.classifier ? '-' + artifact.classifier : ''}.${artifact.extension}"
        }
    }
}

您可以从任务本身获取此信息。
maven publish
插件为每个存储库的每个工件创建一个发布任务

project.tasks.withType(PublishToMavenRepository).all { task ->
    task.doLast {
        def baseUrl = "${task.repository.url}/${task.publication.groupId.replace('.', '/')}/${task.publication.artifactId}/${task.publication.version}/${task.publication.artifactId}"
        task.publication.artifacts.each { artifact ->
            println "${baseUrl}${artifact.classifier ? '-' + artifact.classifier : ''}.${artifact.extension}"
        }
    }
}

您可以从任务本身获取此信息。
maven publish
插件为每个存储库的每个工件创建一个发布任务

project.tasks.withType(PublishToMavenRepository).all { task ->
    task.doLast {
        def baseUrl = "${task.repository.url}/${task.publication.groupId.replace('.', '/')}/${task.publication.artifactId}/${task.publication.version}/${task.publication.artifactId}"
        task.publication.artifacts.each { artifact ->
            println "${baseUrl}${artifact.classifier ? '-' + artifact.classifier : ''}.${artifact.extension}"
        }
    }
}

您可以从任务本身获取此信息。
maven publish
插件为每个存储库的每个工件创建一个发布任务

project.tasks.withType(PublishToMavenRepository).all { task ->
    task.doLast {
        def baseUrl = "${task.repository.url}/${task.publication.groupId.replace('.', '/')}/${task.publication.artifactId}/${task.publication.version}/${task.publication.artifactId}"
        task.publication.artifacts.each { artifact ->
            println "${baseUrl}${artifact.classifier ? '-' + artifact.classifier : ''}.${artifact.extension}"
        }
    }
}


即使使用--debug或--info?URL在正常模式下打印到屏幕上,但我希望在构建过程中以编程方式获取这些URL。换句话说,我不想运行构建,对结果进行grep,然后运行另一个程序。我的理解是,发布时,您应该告诉gradle maven repo的URL(以及凭据),以便它可以推送..除非您在本地发布。您可能需要查看maven publish任务的“约定对象”以查看此任务的配置。即使使用--debug或--info?URL也会以正常模式打印到屏幕上,但我希望在构建过程中以编程方式获取这些URL。换句话说,我不想运行构建,对结果进行grep,然后运行另一个程序。我的理解是,发布时,您应该告诉gradle maven repo的URL(以及凭据),以便它可以推送..除非您在本地发布。您可能需要查看maven publish任务的“约定对象”以查看此任务的配置。即使使用--debug或--info?URL也会以正常模式打印到屏幕上,但我希望在构建过程中以编程方式获取这些URL。换句话说,我不想运行构建,对结果进行grep,然后运行另一个程序。我的理解是,发布时,您应该告诉gradle maven repo的URL(以及凭据),以便它可以推送..除非您在本地发布。您可能需要查看maven publish任务的“约定对象”以查看此任务的配置。即使使用--debug或--info?URL也会以正常模式打印到屏幕上,但我希望在构建过程中以编程方式获取这些URL。换句话说,我不想运行构建,对结果进行grep,然后运行另一个程序。我的理解是,发布时,您应该告诉gradle maven repo的URL(以及凭据),以便它可以推送..除非您在本地发布。您可能需要查看maven发布任务的“约定对象”以查看此任务的配置。这是存储库的URL,而不是工件上载的位置。谢谢。我要给你竖起大拇指,因为我实际上使用了你之前发布的内容,得出了基本相同的结论。任何人都得到了kts的等价物,似乎没有。kts中的每个?这是存储库的URL,而不是工件上载的位置。谢谢。我要给你竖起大拇指,因为我实际上使用了你之前发布的内容,得出了基本相同的结论。任何人都得到了kts的等价物,似乎没有。kts中的每个?这是存储库的URL,而不是工件上载的位置。谢谢。我要给你竖起大拇指,因为我实际上使用了你之前发布的内容,得出了基本相同的结论。任何人都得到了kts的等价物,似乎没有。kts中的每个?这是存储库的URL,而不是工件上载的位置。谢谢。我要给你竖起大拇指,因为我实际上使用了你之前发布的内容,得出了基本相同的结论。有人得到了kts的等价物吗?似乎没有。每个都在kts?