将gradle转换为maven

时间:2019-10-01 15:47:58

标签: java maven gradle

我有一个带有build.gradle的示例应用程序,如下所示。我正在尝试将其转换为Maven

我是gradle和maven的新手,但是对maven的了解略多,所以现在就想坚持下去。

我读了一些https://dzone.com/articles/how-to-convert-maven-to-gradle-and-vice-versa的说明

我放入“ apply plugin maven”行,以获取按照说明生成的pom文件。运行gradlew安装时,出现以下错误

Execution failed for task ':install'.
  

无法发布配置“档案”   无法发布工件'hello-world-java.jar'(C:\ Users \ xxx \ IdeaProjects \ HelloWorld-Java \ build \ libs \ hello-world-java-0.1.0.jar),因为它不存在。

我以前在这个项目上做得很好(从InteliJ IDEA运行它)。 我以前也曾成功地将另一个项目(基于控制台)转换为Maven。

我也见过https://docs.gradle.org/current/userguide/publishing_overview.html#sec:configuring_publishing_tasks 但是我实际上并不想发布档案,我只想要等价的pom.xml。我注意到,如果我没有Maven插件,则安装任务不存在。我也尝试过仅进行gradlew编译,但没有生成pom.xml。我想我需要阅读更多有关mavin插件的信息

buildscript {
    repositories {
        mavenCentral()
    }
    dependencies {
        classpath("org.springframework.boot:spring-boot-gradle-plugin:2.1.0.RELEASE")
    }
}

apply plugin: 'java'
apply plugin: 'maven'
apply plugin: 'eclipse'
apply plugin: 'idea'
apply plugin: 'org.springframework.boot'
apply plugin: 'io.spring.dependency-management'

bootJar{
    mainClassName = 'com.intuit.developer.helloworld.Application'
}



jar {
    archiveBaseName = 'hello-world-java'
    archiveVersion =  '0.1.0'

}

repositories {
    mavenCentral()
    mavenLocal()
}

sourceCompatibility = 1.8
targetCompatibility = 1.8

dependencies {
    compile("com.intuit.quickbooks-online:ipp-v3-java-data:4.0.1")
    compile (group: 'com.intuit.quickbooks-online', name: 'ipp-v3-java-devkit', version: '4.0.1', classifier: 'jar-with-dependencies')   
    compile (group: 'com.intuit.quickbooks-online', name: 'oauth2-platform-api', version: '4.0.1', classifier: 'jar-with-dependencies')   
    compile("org.springframework.boot:spring-boot-starter-web")
    compile("org.springframework.boot:spring-boot-starter-thymeleaf")
    compile("org.springframework.data:spring-data-rest-webmvc")
    compile("org.json:json")
    compile("log4j:log4j:1.2.17")
    compile (group: 'ant', name: 'ant', version: '1.7.0')
    testCompile('org.springframework.boot:spring-boot-starter-test')

}

wrapper {
    gradleVersion = '2.3'
}

1 个答案:

答案 0 :(得分:1)

仅由Gradle构建生成的Maven POM 包含项目使用者所需的信息:依赖项。 POM将没有配置使用Maven构建库本身的配置,例如插件和其他东西。