构建project.war文件通过ant错过了java->服务器文件夹

时间:2015-05-18 07:37:01

标签: ant ibm-mobilefirst mobilefirst-cli

  1. 我正在使用ant和创建project.war文件 MFP中的worklight-ant-builder.jar文件。
  2. 虽然我的项目是使用mfp或通过eclipse在bin中构建的,但.war文件和classes文件夹包含所有内容,包括 server-> java 文件夹中的内容。
  3. 但是当我使用步骤1构建ant文件时,我不会在 server-> java 文件夹中获取文件。
  4.   

    注意我已经通过使用7-zip查看.war文件中的内容来验证这一点,并且还看到了mobileFirst创建的文件夹类,当我使用第2步时,它包含server-> java文件夹内容。

      

    图片包含 peluk 文件夹,该文件夹位于Java-> server-> com内(使用 第2步 构建)

      

    没有 peluk 文件夹的图片,该文件夹位于Java-> server-> com内(使用 第1步 构建)

    我使用的是以下蚂蚁代码。

     <taskdef resource="com/worklight/ant/defaults.properties">
                <classpath>
                    <pathelement location="${res.location}\Resources\worklight-ant-builder.jar"/>
                </classpath>
            </taskdef>
    
            <war-builder projectfolder="bin"
                         warfile="bin\${proj.brcname}.war"
                         classesFolder="classes-folder"/>
    

1 个答案:

答案 0 :(得分:0)

正如@dhineshsundar在评论中提到的:如果您有自定义Java代码并且您正计划使用Ant任务脚本构建项目,则必须首先将Java代码编译为.class文件并指定其位置在Ant任务脚本中。然后,当使用Ant任务脚本构建项目时,它还将获取.class文件。

上述情况不会像使用MobileFirst Studio时那样自动发生。

请参阅此用户文档主题:http://www-01.ibm.com/support/knowledgecenter/SSHS8R_7.0.0/com.ibm.worklight.deploy.doc/devref/r_ant_tasks_deploy_projects.html

<?xml version="1.0" encoding="UTF-8"?>
<project name="myProject" default="all">
  <taskdef resource="com/worklight/ant/defaults.properties">
    <classpath>
      <pathelement location="cli_install_dir/public/worklight-ant-builder.jar"/>
    </classpath>
  </taskdef>
  <target name="all">
    <war-builder projectfolder="."
                 destinationfolder="bin/war"
                 warfile="bin/project.war"
                 classesFolder="classes-folder"/>
  </target>
</project>

<war-builder>元素具有以下属性:

  • projectfolder属性指定项目的路径。
  • destinationfolder属性指定用于保存临时文件的文件夹。
  • warfile属性指定生成的.war文件的目标和文件名
  • classesFolder属性指定一个包含已编译的Java™类的文件夹 - 添加到.war文件。 .jar文件在projectfolder \ server \ lib目录中自动添加