Java 使用gradle将war文件发布到artifactory

Java 使用gradle将war文件发布到artifactory,java,gradle,build.gradle,artifactory,Java,Gradle,Build.gradle,Artifactory,因此,下面的war文件发布jar文件和war文件。它发布war文件,因为我在发布中将其指定为“工件(文件('build/libs/new_file-1.0.war')” 问题1:有没有一种方法可以在不指定全名的情况下发布war文件 问题2:为什么要发布jar文件?我甚至没有在建造它 buildscript { repositories { maven { url 'http://localhost/artifactory/plugins-relea

因此,下面的war文件发布jar文件和war文件。它发布war文件,因为我在发布中将其指定为“工件(文件('build/libs/new_file-1.0.war')”

问题1:有没有一种方法可以在不指定全名的情况下发布war文件

问题2:为什么要发布jar文件?我甚至没有在建造它

buildscript {
    repositories {
        maven {
            url 'http://localhost/artifactory/plugins-release'
            credentials {
                username = "${artifactory_user}"
                password = "${artifactory_password}"
            }
        }
        dependencies {
            classpath(group: 'org.jfrog.buildinfo', name: 'build-info-extractor-gradle', version: '3.1.1')
        }
        configurations {
            warLib {
                transitive=false
            }
        }
    }

    apply plugin: "com.jfrog.artifactory"
    apply plugin: 'eclipse'
    apply plugin: 'java'
    apply plugin: 'maven'
    apply plugin: 'maven-publish'
    apply plugin: 'war'

    war {
        classpath configurations.warLib
    }

    publishing {
        publications {
            mavenJava(MavenPublication) {
                from components.java
                artifact(file('build/libs/new_file-1.0.war'))
                }
        }
    }

    artifactory {
        contextUrl = "${artifactory_contextUrl}"   //The base Artifactory URL if not overridden by the publisher/resolver
        publish {
            repository {
                repoKey = ‘aaa'
                username = "${artifactory_user}"
                password = "${artifactory_password}"
                maven = true
            }

            defaults {
                publications('mavenJava')
                publishPom = false
            }
        }
        resolve {
            repository {
                repoKey = ‘aba'
                username = "${artifactory_user}"
                password = "${artifactory_password}"
                maven = true
            }
        }
    }
问题3:有没有办法将特定库作为依赖项的一部分拉到特定位置

dependencies {
    compile group: 'a', name: 'application_jar', version: '1.0'
    compile group: 'b', name: 'newlock', version:'1.0.0'
    testCompile group: 'unit', name: 'unit', version:'1.0'
}
从上面的依赖关系中,我想将librarya拉到不同的目录中,比如build/deps和所有其他文件都放在$HOME中的.gradle目录中

有人能帮忙吗

#2。
publications{}
部分定义了发布的内容。java中的
行添加jar文件。如果不想发布jar,请删除该行

#1要发布war插件生成的war文件,请使用组件中的
。web

\3与#1和#2无关,请作为单独的问题发布。