Eclipse 无法正确部署 Gradle 项目

标签 eclipse gradle ejb-3.1

所以我有一个 gradle 项目,显然与 eclipse 完全集成有一些问题。 当我使用“gradle build”命令构建整个东西并在 glassfish4 服务器上部署 EAR 文件时,一切似乎都工作得很好,但是当我尝试运行时 “渐变 eclipse ” “gradle eclipseWtp” 将项目导入到 eclipse 并按“在服务器上运行”,只有应用程序的一部分实际部署...我的意思是,当您进入管理面板时,您实际上可以在那里看到该应用程序,但该应用程序仍然无法工作当我转到 glassfish_home/domains/domain1/applications 时,目录是空的...

这是我的 gradle 文件: gradle.build(根)

subprojects {
    apply plugin: 'java'
    apply plugin: 'eclipse'

    repositories {
       mavenCentral()
    }

    dependencies {
        testCompile 'junit:junit:4.11'
    }

    version = '1.0'

    jar {
        manifest.attributes provider: 'gradle'
    }
}

settings.gradle(根)

include ":ejb", ":common", ":web", ":ejb-integration-tests", ":ear"

build.gradle(网络)

apply plugin: 'war'
apply plugin: 'eclipse-wtp'

jar {
    manifest {
        attributes 'Implementation-Title': 'WorldFighter-WEB', 'Implementation-Version': version
    }
}

war {
    archiveName 'WorldFighter.war'
    from 'src/webapp/'
    webInf { from 'src/additionalWebInf' }
}

springVersion = '3.2.2.RELEASE'
sl4jVersion = '1.7.2'

dependencies {

    runtime 'javax.servlet:servlet-api:2.5'

    compile project(':common')

    compile(
        [group: 'org.springframework', name: 'spring-orm', version: springVersion],
        [group: 'org.springframework', name: 'spring-tx', version: springVersion],
        [group: 'org.springframework', name: 'spring-core', version: springVersion],
        [group: 'org.springframework', name: 'spring-web', version: springVersion],
        [group: 'org.springframework', name: 'spring-webmvc', version: springVersion],
        [group: 'org.springframework', name: 'spring-context', version: springVersion],
        [group: 'org.springframework', name: 'spring-context-support', version: springVersion]
    )

    compile(
        [group: 'org.slf4j', name: 'slf4j-jcl', version: sl4jVersion],
        [group: 'org.slf4j', name: 'slf4j-api', version: sl4jVersion]
    )

    compile("org.apache.tiles:tiles-extras:3.0.1") {
        exclude module: 'org.slf4j:jcl-over-slf4j'
        exclude module: 'org.slf4j:slf4j-jdk14'
    }

    compile 'taglibs:standard:1.1.2',
            'javax.transaction:jta:1.1',
            'log4j:log4j:1.2.14',
            'commons-lang:commons-lang:2.6',
            'commons-validator:commons-validator:1.4.0'

}

build.gradle(ejb)

jar {
    manifest {
        attributes 'Implementation-Title': 'WorldFighter-EJB', 'Implementation-Version': version
    }
}

dependencies {
    compile project(':common')
}

build.gradle(耳朵)

apply plugin: 'ear'
apply plugin: 'eclipse-wtp'

jar {
    manifest {
        attributes 'Implementation-Title': 'WorldFighter-EAR', 'Implementation-Version': version
    }
}

dependencies {
    deploy project(path: ':web', configuration: 'archives')
    deploy project(':ejb')
    deploy project(':common')

    earlib 'org.glassfish.extras:glassfish-embedded-all:3.0'
}

ear {

    deploymentDescriptor {
        applicationName = "WorldFighter"
        displayName = "WorldFighter"
        description = "WorldFighter EAR containing EJBs and Web App"    
    }
}

最佳答案

看起来所有依赖项目也应该有 eclipse-wtp 插件。以下对我有用。

allprojects {
    apply plugin: 'eclipse-wtp'
}

我找到了这个here

关于Eclipse 无法正确部署 Gradle 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21658116/

相关文章:

java - 为什么我在 Eclipse 控制台和调试器中都看不到 Java char 数组中的内容?

java - EJB 依赖于另一个 EJB?

xml - 如何使 JAXB 使用自定义命名空间前缀

java - 无法从 '14.0.2' 确定 java 版本

java - 如何解决与 Gradle 的依赖冲突?

comparison - EJB 3.1 或 Spring 3.. 什么时候选择哪一个?

java - 访问多个表

C++ HelloWorld 打印不正确

java - 添加 jar 文件时在调试 Java Eclipse 中取消显示变量

java - 通过单击 Eclipse Java 桌面应用程序中的图像从欢迎页面加载 VIEW