缺少WEB-INF - 将JAR文件添加到Bluemix中的Liberty应用程序

时间:2016-01-08 23:14:19

标签: git ibm-cloud websphere-liberty

我使用Liberty样板创建了一个应用程序。我添加了GIT来为应用程序创建和填充存储库。我需要在我的应用程序中添加一个额外的.jar文件。但是,当我进入GIT存储库并查看文件结构时,我看不到WEB-INF目录。

如何将.jar文件添加到我的项目中,以便文件最终出现在我的应用程序的WEB-INF / lib目录中?

请建议。

1 个答案:

答案 0 :(得分:1)

是的,你是对的,应用程序存储库的结构已经改变,因为似乎构建已经从ant更改为maven。如果要将jar添加到标准java Web应用程序结构中,该结构要求jar位于WEB-INF / lib文件夹中,则需要定义一个指向jar的依赖项。所有maven依赖项都需要来自存储库,因此在为jar定义依赖项之前,需要声明一个包含jar的本地存储库。您可以按照以下步骤操作:

  1. 在GIT的项目根目录中创建新文件夹并将其命名为“repo”
  2. 在'repo'文件夹中创建一个文件夹结构,用于定义jar来自的项目以及jar的版本,如:/com/mycomp/myproject/1.0
  3. 将thejar.jar导入'repo / com / mycomp / myproject / 1.0 /文件夹
  4. 将thejar.jar重命名为thejar-1.0.jar(或您使用的任何版本);
  5. 在pom.xml文件中添加以下内容:

    <repositories>
     <repository>
      <id>ProjectRepo</id>
      <name>ProjectRepo</name>
      <url>file://${project.basedir}/repo</url>
     </repository>
    </repositories>
    
    <dependencyManagement>
     <dependencies>
      <dependency>
       <groupId>com.mycomp.myproject</groupId>
       <artifactId>thejar</artifactId>
       <version>1.0</version>
      </dependency>
     </dependencies>
     </dependencyManagement>
    
    <dependencies>
     <dependency>
      <groupId>com.mycomp.myproject</groupId>
      <artifactId>thejar</artifactId>
      <scope>compile</scope>
     </dependency>
    </dependencies>
    
  6. 提交并推送更改。你应该在战争中看到WEB-INF / lib / thejar.jar 我希望它有所帮助。请告诉我它是如何为您服务的。祝好运。克里斯