gradlew clean build
buildscript {
repositories {
// ...
}
dependencies {
classpath 'com.commercehub.gradle.plugin:gradle-avro-plugin:0.21.+'
classpath 'com.github.jengelman.gradle.plugins:shadow:4.0.+'
}
}
plugins {
id 'java'
id 'pl.allegro.tech.build.axion-release' version '1.12.1'
}
group 'xxx'
sourceCompatibility = '11'
targetCompatibility = '11'
configurations {
compileClasspath {
resolutionStrategy.activateDependencyLocking()
}
intTestImplementation.extendsFrom implementation
}
repositories {
// ...
}
apply from: "${rootDir}/gradle/versioning.gradle"
project.version = scmVersion.version
apply plugin: 'com.commercehub.gradle.plugin.avro'
apply plugin: 'com.github.johnrengelman.shadow'
dependencies {
implementation 'org.apache.avro:avro:1.10.+'
implementation 'org.slf4j:slf4j-log4j12:1.7.+'
implementation 'org.apache.kafka:kafka-streams:2.6.+'
implementation 'io.confluent:kafka-streams-avro-serde:6.0.+'
implementation 'com.fasterxml.jackson.core:jackson-core:2.11.+'
implementation 'com.fasterxml.jackson.core:jackson-annotations:2.11.+'
implementation 'com.fasterxml.jackson.core:jackson-databind:2.11.+'
implementation 'com.fasterxml.jackson.datatype:jackson-datatype-jdk8:2.11.+'
testImplementation 'org.apache.kafka:kafka-streams-test-utils:2.6.+'
testImplementation 'com.fasterxml.jackson.core:jackson-core:2.11.+'
testImplementation 'com.fasterxml.jackson.core:jackson-annotations:2.11.+'
testImplementation 'com.fasterxml.jackson.core:jackson-databind:2.11.+'
testImplementation 'junit:junit:4.13.+'
}
test {
testLogging {
outputs.upToDateWhen { false }
showStandardStreams = true
exceptionFormat = 'full'
}
}
task run(type: JavaExec) {
main = 'Class'
classpath = sourceSets.main.runtimeClasspath
args = ['configuration/dev.properties']
}
jar {
manifest {
attributes(
'Class-Path': configurations.compileClasspath.collect { it.getName() }.join(' '),
'Main-Class': 'Class'
)
}
}
project.tasks.assemble.dependsOn project.tasks.shadowJar
shadowJar {
archiveBaseName = "app-standalone"
archiveClassifier = ''
}
不幸的是,我在gradle docs中找不到任何指向我这个问题的东西。非常感谢您的帮助!
我的错。我没有锁定测试类路径。
它通过以下更改工作:
configurations {
intTestImplementation.extendsFrom implementation
}
dependencyLocking {
lockAllConfigurations()
}
如果有更好的方法,我仍然感兴趣;)
在命令行中,我需要构建一个没有依赖项的可执行jar。当前的“gradle build”命令给了我一个带有依赖项的jar。 在StackOverflow上找不到这个。如果是重复的问题,指给我看。谢谢。
我正在为jboss ear应用程序编写一个EJB jar模块。我使用的是gradle,我不想试图从JBoss声明jar在运行时依赖的所有不同依赖项。是否有一种方法可以声明对目录树中所有文件的依赖关系。
我创建了一个带有 打包的第谷项目。该项目包括一些通过 pom.xml 指定的依赖项。相关的pom部分是: 清单是: 该项目仅包含默认包中的一个类,该类使用来自< code > org . TestNG . annotations 的注释来测试编译期间是否包含依赖项。 如果我使用Maven 3.0.4在命令行上构建项目,一切正常。在Eclipse Juno中导入项目后,我收到了多个错误。最重要的一个
问题内容: 我有一种写入日志文件的方法。如果文件存在,则应将其追加到文件中,否则,我希望它创建一个新文件。 我要检查是否可以创建文件。文件是一个java.io.File对象。createNewFile引发IOException:没有此类文件或目录。自从我几周前编写此方法以来,该方法一直非常有效,直到最近才开始执行此方法,尽管我不知道自己可以更改什么。我检查了该目录是否存在,并且我拥有该目录的写权限
问题内容: 问题。 Gradle依赖管理使得: 没有简便的方法来检查依赖项更新的可用性(仅使用某些第三方插件,如ben-manes / gradle-versions-plugin)并下载更新以替换旧版本; 从远程存储库下载依赖项工件,然后将其存储在gradle缓存中,并在后续构建中重用;但是项目的成功编译必须不依赖于与Internet的连接,远程存储库的可用性以及这些存储库中特定版本的依赖项。
问题。 分级依赖项管理是这样进行的: 检查依赖更新的可用性(仅使用一些第三方插件,如Ben-Manes/Gradle-Versions-Plugin),并下载替换旧版本的更新是不容易的; 依赖项构件从远程存储库下载,然后存储在gradle缓存中,并在后续构建中重用;但项目的成功编译不能依赖于与Internet的连接、远程存储库的可用性以及这些存储库中依赖项的特定版本的存在。 null