Gradle从同一个项目创建war和jar

时间:2015-07-02 11:23:36

标签: java tomcat jar gradle war

我使用spring mvc,gradle和tomcat创建一个java rest服务。我想从这个项目中创建一个战争来部署在tomcat中,我想要一个来自所有模型包的jar。我设法创造了战争并且运作良好。但我不知道从我指定的类创建一个jar用作客户端jar。我知道我必须使用 include('com / a / b / ** / model / **')来选择类,但这就是全部。这个jar我想安装在.m2本地仓库中,所以它可以用作另一个项目的依赖项。以下是我的 build.gradle 文件:

apply plugin: 'java'
apply plugin: 'eclipse'
apply plugin: 'war'
apply plugin: 'maven'
apply from: 'dependencies.gradle'

sourceCompatibility = 1.7
targetCompatibility = 1.7

repositories {
     mavenCentral()
     mavenLocal()
}

def tomcatHome = 'E:\\apache-tomcat-7.0.62'

//change the name of war because default it is mywar.1.0.0.war
war.archiveName "mywar.war"

//move the war into tomcat webapps folder
task deployToTomcat(type: Copy) {
    from war
    into "$tomcatHome/webapps"
}

1 个答案:

答案 0 :(得分:1)

您应该将模块拆分为两个模块:API JAR和WAR。取决于WAR的API JAR。