当前位置: 首页 > 知识库问答 >
问题:

在gradle中可以使用jar中的资源文件吗?

浦泳
2023-03-14

我想使用两个jar文件中的资源文件。可能吗?

build.gradle

sourceSets {
    main {
        resources {
            srcDir 'src/resources'
            files('libs/myOwnFile-1.jar:src/resources')
            //add another resource jar file
        }
    }
}

这意味着,我想包含同样来自libs/myOwnFile-1.jar文件的资源文件(主要是xml文件)。jar是由其他团队创建的,但它是另一个项目,不能与此项目关联。但是我知道资源的路径(src/resources)

是否可以在 jar 文件下使用 src/资源?

共有1个答案

太叔小云
2023-03-14

如果外部JAR包含您想要使用的资源,请考虑将该JAR作为依赖项添加到您的项目中。这样,您也可以在自己的代码中使用这些资源。

例如,以下代码将把libs文件夹中的所有JAR添加为依赖项:

dependencies {
    compile fileTree(dir: 'libs', include: ['*.jar'])
}

另一方面,source ceSets属性通常用于作为项目本身一部分的源/资源(并且不是另一个JAR的一部分)。

 类似资料:
  • 编辑: 结构: A.jar(或A.war) | |src/main/resources/config。属性-(标记为p1) | ||依赖的罐子 当我运行A. jar(或A. war,因为B. jar可以由Web应用程序或java进程调用)时,我希望B. jar中的代码始终使用p1; 当我单独运行B. jar时,我希望B. jar中的代码使用p2 另一种描述方式是主jar/war中同名的资源文件(这

  • 问题内容: 我们正在使用加载属性信息。我们的属性文件已经变得非常庞大,我们正在考虑将主属性文件分成几个子模块。有可能实现这一目标吗? 让我知道? 问题答案: 首先,我想知道为什么您选择了。给出问题的表达方式后,您似乎不必关心本地化/国际化或捆绑文件继承。 有了它,它就变得异常容易,因为它实现了反过来又提供了一种合并另一张地图的方法。开球示例: 如果您真的坚持使用,则最好的选择是创建一个自定义,在该

  • 如何使用Gradle将配置文件或任何其他资源添加到我的jar中? 我的项目结构: Com/Perseus/..----Java包(类文件) config/*.xml--Spring配置文件

  • 我需要创建一个应用程序,使用各种参数,如高度,体积或基础面积排序各种类型的多边形。将通过命令行传递具有多边形参数、排序类型参数、排序方法参数的文件名的参数。该文件位于项目中的“我的资源”文件夹中的“我的src”文件夹之外。我已经实现了所有的程序,当我通过eclipse运行配置使用pass参数运行时,它工作得很好。但是当我尝试使用cmd相同的参数运行我的.jar文件时,它给出了。 我使用打开了我的j

  • 我想从我的jar中读取一个资源,如下所示: 在Eclipse中运行它时工作良好,但如果我将它导出到一个jar中,然后运行它,就会出现一个IllegalArgumentException: 我真的不知道为什么,但通过一些测试我发现如果我改变 至 然后它的工作方式相反(它在jar中工作,但不能在eclipse中工作)。 我使用的是Eclipse,我的文件所在的文件夹位于类文件夹中。

  • 我们在不同的项目中有多个war文件,比如A和B,共享像图像这样的公共资源。公共资源被放置在单独的项目E中的war模块中,并且这个war文件作为依赖项添加到项目a和B中的所有war模块中。目前,我们正在使用maven资源插件将这些公共资源复制到a和B模块的根目录中。 我们如何使用Gradle来执行相同的操作?我尝试使用下面的配置,但是文件没有复制到生成的war文件中。它们只复制到build/libs