Java 在没有POM的情况下生成和使用渐变依赖项

Java 在没有POM的情况下生成和使用渐变依赖项,java,gradle,jar,publishing,Java,Gradle,Jar,Publishing,我正在尝试生成Gradle项目的.jar,但是当它使用Maven publishing生成时,它也会生成一个.pom文件 问题是,我有另一个项目,当它在实现这个依赖关系之前只查找.jar,而现在它在所有其他项目中查找.pom时,我想做的是,该项目停止使用“发布”任务生成.pom,或者当它实现时,停止查找.pom文件,让其他项目工作 下面是在Artifactory项目A中生成.jar的代码,其中项目B中使用了A并查找.pom: publishing { publications {

我正在尝试生成Gradle项目的.jar,但是当它使用Maven publishing生成时,它也会生成一个.pom文件

问题是,我有另一个项目,当它在实现这个依赖关系之前只查找.jar,而现在它在所有其他项目中查找.pom时,我想做的是,该项目停止使用“发布”任务生成.pom,或者当它实现时,停止查找.pom文件,让其他项目工作

下面是在Artifactory项目A中生成.jar的代码,其中项目B中使用了A并查找.pom:

publishing {
    publications {
        mavenJava(MavenPublication) {
              groupId = 'com.proteccion.myproject'
              artifactId = 'myproject-base'
              version = '1.0.1'
            from components.java
        }   
    }
    repositories {
        maven {
            name = 'artifactory'
            url 'https://url/artifactory/MyProject'
            credentials {
                username System.getenv("ARTIFACTORY_USER") 
                password System.getenv("ARTIFACTORY_PWD")  
            }
        }
    }
}

repositories {
    jcenter()
    maven {
        url 'https://url/artifactory/MyProject'
        credentials {
                    username System.getenv("ARTIFACTORY_USER") 
                    password System.getenv("ARTIFACTORY_PWD")  
                }
    }
}
也许有一个相当于这一部分的渐变:

publishing {
    publications {
        mavenJava(MavenPublication) {
              groupId = 'com.proteccion.myproject'
              artifactId = 'myproject-base'
              version = '1.0.1'
            from components.java
        }   
    }

最后,这对我起了作用:

metadataSources {
            artifact()
        }
强制只搜索jar文件。 完整配置:

publishing {
publications {
    mavenJava(MavenPublication) {
          groupId = 'com.company.myproject'
          artifactId = 'myproject-base'
          version = '1.0.1'
        from components.java
    }   
}
repositories {
    maven {
        name = 'artifactory'
        url 'https://url/artifactory/MyProject'
        credentials {
            username System.getenv("ARTIFACTORY_USER") 
            password System.getenv("ARTIFACTORY_PWD")  
        }
    }
}
}

repositories {
jcenter()
maven {
    url 'https://url/artifactory/MyProject'
    credentials {
                username System.getenv("ARTIFACTORY_USER") 
                password System.getenv("ARTIFACTORY_PWD")  
            }
    metadataSources {
            artifact()
    }
}
}
文件(例18):