如何使用Gradle向ejbdeploy.bat提供依赖项列表

时间:2014-05-21 08:38:05

标签: gradle build.gradle

我们最近开始使用Gradle(1.12)来构建我们的应用程序组件,我们开始的第一个地方是EJB Deploy。这就是我们要努力实现的目标:

  1. 编译一个位于项目目录 / ejbModule 的sourceSet(它由java类和META-INF文件夹组成,其中包含ejb-jar.xml和其他与websphere相关的xml。< / p>

  2. 创建一个包含上述包和资源的jar

  3. 运行位于%WAS_HOME%\ bin的ejbdeploy.bat,它将输入作为在步骤2中创建的jar,这将创建存根/骨架并将jar重新打包到不同的目录。
  4. 现在这是我的gradle构建文件

    def wasHome = 'C:/Data/IBM/WebSphere/AppServer'
    def internalClasses = 'C:/GoldCopy1/Workspace/chimessharedlib'
    def appPath = 'C:/GoldCopy1/Workspace/IEApp'
    
    apply plugin:'java'
    
    repositories {
    
    flatDir {
       dirs wasHome + '/lib'
       dirs internalClasses
       dirs appPath
      }
    }
    
    dependencies {
    
    compile name : 'j2ee'
    compile name : 'commons-lang-2.3'
    compile name : 'FW'
    compile name : 'Common'
    compile name : 'DA'
    compile name : 'ST'
    }
    
    sourceSets {
    main {
        java {
            srcDir '/ejbModule'
        }
        resources {
            srcDir '/ejbModule'
        }
      }
    }
    
    task runEJBDeploy (type:Exec) {
    commandLine wasHome + '/bin/ejbdeploy.bat', '/C'
    
    def inputJar = "" + libsDir + File.separator + 'AR.jar';
    println inputJar;
    def argsList = [inputJar, "C:\\tpp" , "C:\\tpp\\deploy\\AR.jar" , "-complianceLevel", "5.0"]
    args = argsList;
    }
    

    因此,通过运行上面的 runEJBDeploy 任务,我想生成如下命令:

    ejbdeploy.bat -cp "C:\tpp\FW.jar;C:\tpp\DA.jar;C:\tpp\Common.jar" C:\tpp\AR.jar C:\tpp C:\tpp\deployed\AR.jar -complianceLevel 5.0
    

    因此,由于FW,DA和Common已经在build.gradle文件的dependencies {}部分中提供,有没有办法使用这些依赖项在“-cp”之后附加它然后运行命令?

    我是新手,所以请指出任何其他应该改进的错误方法。

    提前致谢

0 个答案:

没有答案