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

如何排除所有,但一个特定的罐子从Gradle disZip任务?

危裕
2023-03-14

第192行https://github.com/gradle/gradle/blob/master/subprojects/plugins/src/main/java/org/gradle/api/plugins/ApplicationPlugin.java是:

libChildSpec.from(project.getConfigurations().getByName(JavaPlugin.RUNTIME_CLASSPATH_CONFIGURATION_NAME));

因为我的项目使用Spring Boot,它生成一个独立的jar,所以如何从distZip任务中排除所有其他jar?

共有1个答案

薛博艺
2023-03-14
distributions {
  main {
    contents {
      into('lib') {
        project.configurations.runtimeClasspath.files.findAll { file ->
          file.getName() != project.tasks.jar.outputs.files.singleFile.name
        }.each { file ->
          exclude file.name
        }
      }
    }
  }
}
 类似资料:
  • 问题内容: 我们有一个与已删除的某些需求相关的软件包,但我们不想删除该代码,因为将来可能会再次需要它。因此,在我们现有的ant构建中,我们只是将该包排除在了jar中之外。这些类由于我们还删除了它们的依赖关系而无法编译,因此它们不能包含在构建中。 我正在尝试模仿Gradle中的功能,如下所示: 即使使用上面的exclude调用(并且我也尝试过不带方括号的尝试),gradle仍在尝试编译类,这会导致编

  • 我有一个多个域共享一个htaccess的系统。目前,我使用以下命令将所有非www请求重定向到www。 唯一的问题是现在我根本不能使用子域,因为子域。我的主人。com将被重定向到www.sub-domain。我的主人。com 上述规则是否有一种方法可以排除所有以“sub-”开头的请求?而不是重定向到www。 更新: 在我的表格中只有以上5行。htaccess将抛出“500-内部服务器错误”。

  • 问题内容: 我对ThreadPoolExecutor有一个非常简单的问题。我有以下情况:我必须使用队列中的对象,为它们创建适当的工作程序任务,然后将其提交给ThreadPoolExecutor。这很简单。但是在关闭情况下, 许多 工作人员可能会排队等待执行。由于这些任务之一可能正在运行一个小时,而且我希望相对快速地正常关闭应用程序,因此我想从ThreadPoolExecutor中丢弃所有排队的任务

  • 我有一个需求,我想找到运行的jar中的jar的路径。假设有一个名为example-1.0.0.jar的罐子在一个名为main-1.0.0.jar.的运行罐子里,我想知道运行罐子里存在的罐子的路径。 编辑1:例如,jar是项目中的一个依赖项。例如,假设我的项目中有一个log4j依赖项,我想知道log4j jar在类中的路径。我怎样才能找到路?

  • 是的。这种问题已经被问了很多时间了。这是我得到的。 我有一个用gradle构建的jar文件(将被称为“库”)。这个库在(依赖项)中嵌入了一个解压缩的jar。库的内部包(文件夹树)和嵌入类处于同一级别。例如,com.xxx.yyy是库,com.xxx.aaa是嵌入的、解压缩的jar类(依赖项)。 如果我以“独立的方式”运行jar(Java-jar等),它就能正常工作。 但如果我将这个jar作为库添加

  • 如何才能缓解这种情况?