我正在尝试制作一个可执行的程序文件来分发我的java程序。通常,我会通过运行以下命令来创建此文件:
$ echo '#!/usr/bin/java -jar' > program
$ cat my-program.jar >> program
$ chmod +x program
据我所知,Gradle应该能够发布软件。我不确定这是否延伸到发布操作系统,或者它仅仅是供包维护者使用的文件。as covered here
我希望能够让Gradle为制作软件包准备分发文件。如下所示:
distributions
└── project_1.1-1
└── Folder
├── control
└── usr
└── local
└── bin
└── program
到目前为止,我已经在build.gradle
中尝试过了
distributions {
write '#!/usr/bin/java -jar'
into program
Jar {
from sourceSets.main.output
dependsOn configurations.runtimeClasspath
from {
configurations.runtimeClasspath.findAll {
it.name.endsWith('jar') }.collect { zipTree(it) }
}
}
} into program
}
发布于 2019-06-26 05:52:59
要复制echo
命令,只需将JAR文件的名称作为program
中的第二行write
即可。请注意,您在这里不是在创建二进制文件。相反,您正在创建一个bash脚本,该脚本在JAR文件上自动运行java
解释器。
https://stackoverflow.com/questions/56762412
复制相似问题