我想制作一个可执行文件,该文件将自动创建带有相关任务的Google任务列表。
但是,现在,我正尝试使用Google提供的here默认代码来简单地创建可执行文件。一旦添加了credentials.json
文件(如下所述)并在terminal / cmd中输入了gradle run
(在我提供的仓库中),它将按预期工作。
但是,如果您运行gradle jar
创建一个jar,尝试运行jar时会出现此错误:
java.lang.NoClassDefFoundError:com / google / api / client / json / JsonFactory
通过点击this page上的“启用GOOGLE TASKS API”,下载并替换credentials.json
中的./src/main/resources/
文件。
gradle run
在项目的根目录下,输入grade jar
。这将在./src/build/libs/
文件夹中创建一个罐子
./src/build/libs/
文件夹中,运行java -jar demo-1.0.jar
这时,您将得到上面提到的错误。
答案 0 :(得分:3)
您似乎想要的是所谓的“超级” jar(也包含其依赖项的jar)
您可以通过以下方式实现
jar {
from configurations.runtime.collect { zipTree(it) }
}