作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我需要帮助,将 Gradle 包含在现有项目中。
我的主要问题是项目结构不是“默认”Gradle 结构。我的创意项目中还有三个项目,这使得它变得更加困难。
我的项目:
这是我的文件夹结构:
所以我为我的类(class)获得了很好的 URL 样式数据包。 (即:com.elmac.client.Main)
我的具体问题
为了创建两个 .JAR 文件,我必须在哪里放置哪些 gradle 文件,以及我必须在文件中写入什么内容(客户端和服务器依赖于共享 --> 共享不需要 jar 文件) .
我对几十个教程感到非常困惑,每个教程都包含与我的不相似的相似结构。而且我还没有弄清楚如何包含我的项目(我什至不知道在这个项目结构上放置哪个文件!)
最佳答案
我不明白你的推理“所以我为我的类(class)获得了很好的 URL 样式数据包。”即使您将它们拆分为子项目并使用更标准的目录结构,您也会得到这一点。然后,您可以让客户端和服务器子项目都依赖于共享子项目(作为 jar 或直接使用项目依赖项)。
但是要回答您的问题,您可以首先在 build.gradle 中定义不同的源集:
sourceSets {
client {
java {
srcDirs = ["$projectDir/src"]
include '**/client/**'
}
...
}
然后这些将被编译到构建目录中的单独目录中。然后您可以从这些源集构建您的 jar:
task clientJar(type: Jar) {
from sourceSets.client.output
}
您可能会遇到 IntelliJ 的问题,因为它在每个模块中只能有一个主输出目录和一个用于测试的输出目录,因此您不能再使用 IntelliJ 编译和运行(例如,当运行单个单元测试时),您将必须使用 gradle 任务运行所有内容。
关于java - IntelliJ 文件夹结构上的 Gradle,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34364933/
我是一名优秀的程序员,十分优秀!