【问题标题】:Gradle create war and jar from same projectGradle 从同一个项目创建战争和 jar
【发布时间】:2015-09-19 21:41:00
【问题描述】:

我正在使用 spring mvc、gradle 和 tomcat 创建一个 java rest 服务。我想从这个项目中创建一个战争以部署在 tomcat 中,我想要一个来自所有模型包的 jar。我设法制造了战争,而且效果很好。但我不知道从我指定的类创建一个 jar 以用作客户端 jar。我知道我必须使用 include('com/a/b/**/model/**') 来选择类,但仅此而已。我想将这个 jar 安装在 .m2 本地 repo 中,以便它可以用作其他项目的依赖项。下面是我的 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"
}

【问题讨论】:

    标签: java tomcat jar gradle war


    【解决方案1】:

    您应该将模块拆分为两个模块:API JAR 和 WAR。依赖于 WAR 中的 API JAR。

    【讨论】:

    • 是的...这就是我最终所做的
    • @user3258772 你愿意分享你的解决方案吗?
    猜你喜欢
    • 2013-03-08
    • 2017-02-12
    • 1970-01-01
    • 2012-09-16
    • 2015-04-10
    • 2014-11-23
    • 2015-02-23
    • 1970-01-01
    • 2019-05-22
    相关资源
    最近更新 更多