我们有一个这样的项目
公共-模块src-Spring引导工作者-模块
在工作模块中,我们build.gradle这样配置
plugins {
id 'java'
}
group 'org.example'
version '1.0-SNAPSHOT'
repositories {
mavenCentral()
}
task fatJar(type: Jar) {
manifest {
attributes 'Implementation-Title': 'Gradle Jar File Example',
'Implementation-Version': version,
'Main-Class': 'com.worker.worker.EntryPoint'
}
from { configurations.compile.collect { it.isDirectory() ? it : zipTree(it) } }
destinationDir(new File(projectDir.parent,"\\libs\\worker\\"))
with jar
}
dependencies {
compile project(':jTransfer')
compile project(':datamasking')
compile project(':common')
implementation 'com.google.code.gson:gson:2.8.6'
implementation 'mysql:mysql-connector-java:8.0.19'
implementation 'com.microsoft.sqlserver:mssql-jdbc'
implementation 'com.microsoft.sqlserver:mssql-jdbc:8.4.1.jre8'
testCompile group: 'junit', name: 'junit', version: '4.12'
}
当我运行任务法特加尔sqlserver: mssql-jdbc丢失时。我试图在{configurations.compile.collect{it.is目录()的这部分代码中打印?it: zipTree(it)}}和“它”从未引用到sqlserver jdbc jar。
由于worker模块包含公共模块“compile project(':common')”,所以我尝试将依赖项放在公共模块中。当我这样做时,在控制台中打印出sqlserver:mssql,当我转到jar存档时,包括sqlserver:mssql jar,但问题是当我运行java-jar worker时,输出是无法加载主类:。。。
同样的事情也发生在Tika库中。所以我不确定它是否与那些罐子有关,或者我正在做一些关键的事情来使用这个模块,也许会有一些冲突
我试着用这个
from {
configurations.compileClasspath.collect { it.isDirectory() ? it : zipTree(it) }
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
}
with jar
发生的是我的jar找不到主类,但是当我进入jar存档时。我去我的com.worker....我看到有两个EntryPoint.class文件。
总之,当我不使用这两行代码时,我的jar可以启动,它有一个EntryPoint.class文件,但是缺少jdbc jar库
尝试包含所有compileClasspath和runtimeClasspath。
这样的任务:
task fatJar(type: Jar) {
zip64 = true
manifest {
attributes 'Main-Class': 'your.main.class'
}
archiveBaseName.set("Name")
archiveVersion.set(versionInt)
from {
configurations.compileClasspath.collect { it.isDirectory() ? it : zipTree(it) }
configurations.runtimeClasspath.collect { it.isDirectory() ? it : zipTree(it) }
}
with jar
}
我试图用我的gradle项目运行junit测试,但不管是什么测试,它们都会抛出以下堆栈跟踪 我已经看到了一些建议的解决方案,但似乎没有一个奏效。当我在ant中运行它们时,我的测试运行良好。我已经确保xerces使用的是最新版本,我还添加了建议的版本 对于JVM,但似乎什么都不起作用。 任何建议都将不胜感激。我可以根据要求提供更多信息。 **更新** 做了以下更改- 但现在的结果如图所示 **更新2
我通过VS Code创建了一个新的flutter项目。但是我不知道为什么我在运行时会有这个错误 失败:构建失败,有一个异常。 > 错误:配置根项目“android”时出现问题。 无法解析配置“:classpath”的所有项目。找不到com。Android工具。建造:梯度:3.6。2.在以下位置搜索: https://dl.google.com/dl/android/maven2/com/andro
谷歌刚刚开源了它的构建工具Bazel。这个工具和Gradle有什么不同?它能做什么是Gradle做不到的,它做什么更好,Gradle做什么更好?
我正在尝试让我现有的Android项目与渐变和智能J 12一起工作。以前,我曾让它与maven一起工作,但这似乎不像gradle那样灵活,而且据我所知,我需要的子文件夹更少。 我的Android项目分为干净的java库(:core)和实际的应用程序(:Android)。这两个项目都在我的主项目文件夹中。 我认为,用这个实现gradle工作的理想解决方案是将(:core)和(:android)项目视
我正试图用quarkus运行简单的“入门”型gradle项目,每次我的单元测试都会因为这个错误而失败 按照这里的指示https://quarkus.io/guides/gradle-tooling对正在发生的事情有什么建议或想法吗?
当我试图建立Android应用程序我得到这个错误: 当前版本的Android Gradle插件不支持按需配置,因为您使用的是Gradle 4.6或更高版本。建议:通过设置组织禁用按需配置。格拉德尔。configureondemand=在渐变中为false。属性文件或使用低于4.6的渐变版本。 在将此行添加到此文件中后,作为并尝试再次构建,我也会出错