Java Gradle:通知生成侦听器失败
当我们使用gradle构建应用程序时,它会引发以下异常。以下是build.gradle代码:Java Gradle:通知生成侦听器失败,java,gradle,build.gradle,Java,Gradle,Build.gradle,当我们使用gradle构建应用程序时,它会引发以下异常。以下是build.gradle代码: buildscript { repositories{ jcenter() } dependencies { classpath "org.jfrog.buildinfo:build-info-extractor-gradle:4.8.1" classpath "io.spring.gradle:dep
buildscript {
repositories{
jcenter()
}
dependencies {
classpath "org.jfrog.buildinfo:build-info-extractor-gradle:4.8.1"
classpath "io.spring.gradle:dependency-management-plugin:1.0.9.RELEASE"
}
}
apply plugin: "idea"
apply plugin: "java-library"
apply plugin: "maven-publish"
apply plugin: "com.jfrog.artifactory"
apply plugin: "io.spring.dependency-management"
group = "com.xx.ff"
version = "2.1.5-SNAPSHOT"
wrapper {
gradleVersion = "6.5"
distributionType = Wrapper.DistributionType.ALL
}
repositories {
jcenter()
if (System.getenv('ARTIFACTORY_USER') == null || System.getenv('ARTIFACTORY_PASSWORD') == null) {
logger.warn("Please set environment variables ARTIFACTORY_USER and ARTIFACTORY_PASSWORD")
}
maven {
name "libs-snapshot"
url "https://vvvvvvvvvvvvvvvv/artifactory/libs-snapshot/"
credentials {
username = System.getenv('ARTIFACTORY_USER')
password = System.getenv('ARTIFACTORY_PASSWORD')
}
}
maven {
name "libs-release"
url "https://vvvvvvvvvvvvvvvvvvvvvvvvvv/artifactory/libs-release/"
credentials {
username = System.getenv('ARTIFACTORY_USER')
password = System.getenv('ARTIFACTORY_PASSWORD')
}
}
}
java {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
idea.module {
outputDir file("build/classes/java/main")
testOutputDir file("build/classes/java/test")
}
dependencyManagement {
imports {
mavenBom "org.springframework.boot:spring-boot-dependencies:${springBootVersion}"
}
}
dependencies {
api("org.springframework.boot:spring-boot-starter-security:${springBootVersion}")
api("org.springframework.security.oauth.boot:spring-security-oauth2-autoconfigure:${springBootVersion}")
implementation("javax.validation:validation-api:${validationVersion}")
}
artifactory {
contextUrl = "${artifactory_contextUrl}"
publish {
repository {
repoKey = "libs-snapshot-local"
username = System.getenv('ARTIFACTORY_USER')
password = System.getenv('ARTIFACTORY_PASSWORD')
maven = true
}
defaults {
publications("mavenJava")
}
}
}
publishing {
publications {
mavenJava(MavenPublication) {
from components.java
}
}
}
我得到以下错误:
构建文件,第81行
未能通知生成侦听器
'org.gradle.api.file.FileCollection org.gradle.api.publish.maven.internal.publication.MavenPublicationInternal.getPublishableFiles()'
有谁能帮我一下吗?供将来偶然发现这个错误的读者参考 我一直在这里整理一份工作的jfrog出版物: 我得到了错误,然后意识到我没有使用android 当我有这个错误时,我得到了这个错误:
publishing {
publications {
Android(MavenPublication) {
groupId "${projectGroupName}"
artifactId 'MyFirstArtifactId'
version "${projectVersionName}"
artifact "$buildDir/blah/blah/mything-1.0-SNAPSHOT.jar"
}
}
}
并将“Android”改为“mavenJava”,如下所示
publishing {
publications {
mavenJava(MavenPublication) {
groupId "${projectGroupName}"
artifactId 'MyFirstArtifactId'
version "${projectVersionName}"
artifact "$buildDir/blah/blah/mything-1.0-SNAPSHOT.jar"
}
}
}
我唯一的另一个暗示是我有这个。请记住,我有一个多模块gradle项目,我不想人工发布根模块
subprojects {
apply plugin: 'java-library'
apply plugin: "maven-publish"
}
所以我的总体想法是:你是否缺少一个应用插件
文件:
=========
另一个提示项目:
=========
我发布了另一个较长的答案:
=========
只是给新手的提醒
下面是上面url的示例代码:
publishing {
publications {
myPublicationName(MavenPublication) {
// Configure the publication here
}
}
}
这就是为什么在“myPublicationName”中使用“关键字”更难识别的原因之一
=========
出版{
出版物{
mavenJava(MavenPublication){
from(components.java)
}
}
}
我仍在试图弄清楚mavenJava是否只是另一个名称(如“myPublishingName”和“from”是更重要的部分。或者它是一个特殊的名称/保留关键字。供将来偶然发现此错误的读者使用 我一直在这里整理一份工作的jfrog出版物: 我得到了错误,然后意识到我没有使用android 当我有这个错误时,我得到了这个错误:
publishing {
publications {
Android(MavenPublication) {
groupId "${projectGroupName}"
artifactId 'MyFirstArtifactId'
version "${projectVersionName}"
artifact "$buildDir/blah/blah/mything-1.0-SNAPSHOT.jar"
}
}
}
并将“Android”改为“mavenJava”,如下所示
publishing {
publications {
mavenJava(MavenPublication) {
groupId "${projectGroupName}"
artifactId 'MyFirstArtifactId'
version "${projectVersionName}"
artifact "$buildDir/blah/blah/mything-1.0-SNAPSHOT.jar"
}
}
}
我唯一的其他提示是我有这个。请记住我有一个多模块的gradle项目,我不想人工发布根模块
subprojects {
apply plugin: 'java-library'
apply plugin: "maven-publish"
}
所以我的总体想法是:你是否缺少一个应用插件
文件:
=========
另一个提示项目:
=========
我发布了另一个较长的答案:
=========
只是给新手的提醒
下面是上面url的示例代码:
publishing {
publications {
myPublicationName(MavenPublication) {
// Configure the publication here
}
}
}
这就是为什么在“myPublicationName”中使用“关键字”更难识别的原因之一
=========
出版{
出版物{
mavenJava(MavenPublication){
from(components.java)
}
}
}
我仍在试图弄清楚mavenJava是否只是另一个名字(比如“myPublishingName”)“from”是更重要的部分。或者它是一个特殊的名称/保留关键字。我遇到了同样的错误,并将jfrog artifactory gradle插件版本升级到
4.18.3
,正如对另一个问题的回答,解决了itI遇到了同样的错误,并将jfrog artifactory gradle插件版本升级到4.18.3
回答了另一个问题-,解决了它