1.我的项目有两个主要类我想使用gradle为每个主类构建jar.我的源码有2个文件ValidationRule.java SupportValidator.java这两个文件都有一个主类每个我想为每个主类构建jar我可以从eclipse中实现同样的工作正常2.我想为我的项目加载源文件从2个不同的文件夹,有些部分在一个文件夹中,剩下的就在另一个文件夹中,例如project/src和项目外的另一个文件夹(../../../ SharedClass)
我的脚本如下
apply plugin: 'eclipse'
apply plugin: 'java'
sourceCompatibility = 1.6
archivesBaseName = 'Process_XY'
configurations {
configurations.compile.transitive = false
}
dependencies {
compile fileTree(dir:'/trunk/Solutions/project/Source/Binaries/CommonFunctions/build/libs', include: '*.jar')
compile fileTree(dir:'/trunk/Solutions/project/lib/GeoTools/geotools-2.7.4-bin/geotools-2.7.4', include: '*.jar')
compile "org.apache.hadoop:hadoop-core:1.0.3"
compile "commons-collections:commons-collections:3.2.1"
compile "commons-configuration:commons-configuration:1.6"
compile "commons-discovery:commons-discovery:0.2"
compile "commons-lang:commons-lang:2.4"
compile "commons-logging:commons-logging:1.1.1"
compile "commons-logging:commons-logging:1.0.4"
compile "log4j:log4j:1.2.16"
compile "com.vividsolutions:jts:1.8"
compile "commons-net:commons-net:1.4.1"
compile "org.apache.hadoop:hadoop-core:1.0.3"
compile "commons-httpclient:commons-httpclient:3.0.1"
compile "org.mortbay.jetty:servlet-api:2.5-20081211"
compile "org.apache.hbase:hbase:0.94.0"
compile "org.apache.zookeeper:zookeeper:3.4.3"
}
repositories {
mavenCentral()
maven { url "https://repository.cloudera.com/artifactory/cloudera-repos/" }
maven { url "http://repo.springsource.org/libs-release" }
maven { url "http://repo.springsource.org/libs-milestone" }
maven { url "http://repo.springsource.org/libs-snapshot" }
maven { url "http://www.datanucleus.org/downloads/maven2/" }
maven { url "http://oss.sonatype.org/content/repositories/snapshots" }
maven { url "http://people.apache.org/~rawson/repo" }
}
jar {
from configurations.compile.collect { it.isDirectory() ? it : zipTree(it) }
manifest.attributes("Main-Class":"org.project.seismic.Process_XY")
}
sourceSets {
main {
java {
source = ['src/org', '../../../SharedClass/org']
}
}
}
Run Code Online (Sandbox Code Playgroud)
我在sourceSets方法中尝试从2个文件夹加载源但它没有用
提前致谢..!!如何实现使用gradle.
好的,首先,sourceon a SourceDirectorySettake另一个SourceDirectorySet.srcDirs然而,该方法需要路径.将该块更改为以下内容:
sourceSets {
main {
java {
srcDirs ['src/org', '../../../SharedClass/org']
}
}
}
Run Code Online (Sandbox Code Playgroud)
您可以轻松添加第二个jar任务,如下所示:
task secondJar(type: Jar) {
name = other-main-jar
from ...
manifest.attributes(...)
}
assemble.dependsOn(secondJar)
Run Code Online (Sandbox Code Playgroud)
这将注册一个名为的新Jar任务secondJar,并确保在项目组装时,还会创建此jar.
| 归档时间: |
|
| 查看次数: |
2203 次 |
| 最近记录: |