如何在gradle文件夹中下载带有pom文件的jar文件?

Posted

技术标签:

【中文标题】如何在gradle文件夹中下载带有pom文件的jar文件?【英文标题】:How download jar file with pom file in gradle folder? 【发布时间】:2019-10-09 13:33:35 【问题描述】:

我将compile 'org.apache.commons:commons-vfs2-project:2.3'添加到我的build.gradle文件中,但我发现有~\.gradle\caches\modules-2\files-2.1\org.apache.commons\commons-vfs2-project\2.3\860b837e62ab6d3282e7ff96f63ea21aebcdba40\commons-vfs2-project-2.3.pom,我该如何下载jar文件?

【问题讨论】:

【参考方案1】:

这是解决方案之一。 下面是示例项目的 build.gradle 我已经包含了 2 个插件并编写了脚本以在构建 jar 时包含其他脚本。 有一些 Eclipse 生成的脚本我没有删除。

apply plugin: 'java'

/**Following plugins are needed */

apply plugin: 'maven-publish' 
apply plugin: 'maven'

/**Just to include jar versioning*/
version = '1.0.0'

repositories 
    jcenter()


dependencies 

    compile 'org.slf4j:slf4j-api:1.7.25'
    testCompile 'junit:junit:4.12'





apply plugin: 'eclipse'

eclipse     
  classpath 
    downloadSources = true // default: true
    downloadJavadoc = true // default: false
  
 

def eclipseSourceFolders=[
    'src/main/java',
    'src/main/resources',
    'src/test/java',
    'src/test/resources'
];

tasks.eclipse.dependsOn << 

    for (String sourceFolder: eclipseSourceFolders) 
        def resourceDir = new File(project.projectDir, sourceFolder)
        if( !resourceDir.exists() && ! resourceDir.mkdirs() ) 
            logger.info("Not able to create %1",resourceDir);
        
    

/**
Add Following scripts to placs pom.xml within jar and .pom file within libs folder*/

publishing 
    publications 
        mavenJava(MavenPublication) 
            from components.java
        
    


/** While creating jar generate and place pom.xml also place .pom file in libs folder */
jar 
    into("META-INF/maven/$project.group/$project.name") 
        from  generatePomFileForMavenJavaPublication 
        rename ".*", "pom.xml"
    

    doLast 
        pom 
            project 

            
        .writeTo("$buildDir/libs/$project.name-$version.pom")
    

【讨论】:

谢谢,我收到了compile 'org.apache.commons:commons-vfs2:2.3'

以上是关于如何在gradle文件夹中下载带有pom文件的jar文件?的主要内容,如果未能解决你的问题,请参考以下文章

在 Gradle 中,如何生成具有解析为实际使用版本的动态依赖项的 POM 文件?

如何让 gradle 在项目的根目录为 maven 用户生成一个有效的 pom.xml 文件?

`gradle install` 如何生成 `pom.xml` 文件

AndroidStudio一直下载.pom文件

如何在 gradle 中重用 pom.xml 中定义的依赖项

如何调试 Gradle build.gradle 文件(在调试器中,带有断点)?