我刚刚花了一点时间才了解到,如果目录(以及 jar 文件)被标记为 LIKE_THIS,Gradle 就无法创建工作 jar 文件。
有谁知道这是为什么吗?我刚刚开始学习 Java,想知道为什么。我听说用大写字母标记包裹也是不好的做法。
编辑:
如果目录全部大写,我会得到Error: Could not find or load main class src.main.java.HelloWorld
,但如果它被标记为某些内容,它会工作得很好喜欢这个
。
编辑:
修复标签后我的目录结构只是来自教程,但这里是:
alexanders-mbp:VALID_JAVA alexanderkleinhans$ tree
.
├── build
│ ├── classes
│ │ └── main
│ │ └── net
│ │ └── petrikainulainen
│ │ └── gradle
│ │ └── HelloWorld.class
│ ├── dependency-cache
│ ├── libs
│ │ └── VALID_JAVA.jar
│ └── tmp
│ ├── compileJava
│ └── jar
│ └── MANIFEST.MF
├── build.gradle
└── src
└── main
└── java
└── net
└── petrikainulainen
└── gradle
└── HelloWorld.java
将目录更改为 something_else
并重新构建使一切正常。顺便说一句,没有构建错误。
编辑:
我正在关注this并且无法让它工作,所以我最终克隆了 git-repo我在那里发现了我的问题。
要运行,我会做
gradle 组装
gradle构建
java -jar build/library/VALID_JAVA.jar
(VALID_JAVA 是目录名,因此是 jar 文件名。)
最佳答案
看起来您尝试启动 src.main.java.HelloWorld
,但如果您查看 GIT 存储库中的源代码,完全限定的类名称是 net.petrikainulainen.gradle .HelloWorld
(也与您的目录结构匹配)。
要启动应用程序,请使用
java -classpath build/libs/VALID_JAVA.jar net.petrikainulainen.gradle.HelloWorld
另请注意,根据 GIT 存储库中的说明,gradle 构建会创建一个可运行的 jar 文件,您可以像这样启动该文件
java -jar pathToJarFile
关于java - 如果 Gradle 中的字母全部大写,无法创建工作 jar 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34784446/