据我所知,组装任务包括以下任务:
:compileJava
:processResources
:classes
:jar
:assemble
我的jar任务依赖于复制库任务,在该任务中,我将所有库从实现配置复制到libs文件夹中。为了获得一个工作的可执行jar,我当前组装了我的项目,执行copy libs任务,然后再次执行jar任务(在libs上迭代并将它们的名称添加到类路径),因为这样做很好。
:compileJava
:processResources
:classes
:jar
:assemble
:copyLibs
:jar
但是,当我通过dependsOn将copy libs任务放在jar任务之前时,当我执行项目时,jar并没有找到所有lib,即使它们似乎已经成功复制。
:compileJava
:processResources
:classes
:copyLibs
:jar
:assemble
编辑:我的build.gradle
的复制库和jar任务
project.configurations.implementation.setCanBeResolved(true)
task copyLibs(type: Copy) {
from configurations.implementation
into "$buildDir/libs"
}
build.dependsOn copyLibs
jar {
manifest {
attributes 'Main-Class': 'dc.v077a.server.ServerMain',
'Class-Path': fileTree("$buildDir/libs").filter {
it.isFile() && !it.name.startsWith("dc-v077a-server") }.files.name.join(' ')
}
}
project.configurations.implementation.setCanBeResolved(true)
/*
* Generate a fat executable jar that includes all implementation dependencies
*/
jar {
duplicatesStrategy = DuplicatesStrategy.EXCLUDE
manifest {
attributes 'Main-Class': 'dc.v077a.server.ServerMain'
}
from {
configurations.implementation.filter{ it.exists() }.collect { it.isDirectory() ? it : zipTree(it) }
}
}
1、任务中有未完成的子任务; 2、没有任务状态置位权限(有此权限的角色位【任务创建者/执行者】、【项目创建者】)
我需要在Go中复制一个切片,并读取文档。有一个复制功能可供我使用。 copy内置函数将元素从源片复制到目标片。(作为一种特殊情况,它还会将字节从字符串复制到字节片。)源和目标可能重叠。Copy返回复制的元素数,它是len(src)和len(dst)中的最小值。 但当我这样做的时候: 我的和以前一样是空的(我甚至尝试使用): 你可以去游乐场看看。那么为什么我不能复制一个切片呢?
问题内容: 我有一类带有一些变量的类。当我在主类中实例化该类的对象时。我只能访问和修改一个方法(任何方法)中的成员变量;不在他们外面。这是为什么?我被困住了,似乎无法在Google上找到答案。 我也尝试访问说明符并得到相同的结果 问题答案: 它不起作用,因为您是在无效的Java语法的构造函数或方法之外定义实例的。 可能的解决办法是: 但是您可能要考虑保护您的类变量,例如使所有属性成为并使用和方法来
我想将此SecureSocial快照用于我的项目: 版本信息: Scala版本:2.11.5 SBT版本:0.13.8 播放版本:2.3.7
我创建了一个简单的示例(名称实际上并不意味着什么): GradleMultiProject\core\src\main\java\core.java 堆芯建造
我正在尝试用maven-shade插件2.1构建一个uber-jar。我希望它包括我的jar和依赖jar中的所有类。但我发现它不包括依赖jar中的类。我可能做错了什么?以下是我在pom.xml中对maven-shade插件的用法。可能是因为finalName与project.artifactid相同吗?