gpt4 book ai didi

java - IBM Websphere 包的 Maven 依赖项

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:29:46 24 4
gpt4 key购买 nike

我正在尝试将使用 IBM websphere 8.0.0.5 的“经典”JAVA EE 项目转换为 Maven 多模块项目并面临 IBM 依赖项的问题。

我们使用来自以下包的 IBM 类:

  • com.ibm.websphere.asynchbeans
  • com.ibm.websphere.scheduler
  • com.ibm.websphere.ce.cm
  • com.ibm.ws.asynchbeans
  • com.ibm.ws.util.ThreadPool

为了编译我的本地项目,我从 IBM 下载了 was.installer-8.0.0.pm。并使用

将它安装到我的maven
mvn install -f "was.installer-8.0.0.pom" -D serverInstallationFolder="C:\Program Files (x86)\IBM\WebSphere\AppServer"

根据命令行输出,此步骤成功。

然后我按照 IBM 的描述将以下依赖项添加到我的项目中:

在 parent 中:

<dependency>
<groupId>com.ibm.tools.target</groupId>
<artifactId>was</artifactId>
<version>8.0.0</version>
<type>pom</type>
<scope>provided</scope>
</dependency>

在模块中:

 <dependency>
<groupId>com.ibm.tools.target</groupId>
<artifactId>was</artifactId>
</dependency>

但是我仍然无法编译我的项目,因为找不到 IBM 包。

谁能帮我找出并改正我犯的错误?

编辑

在遵循评论中的 BevynQ 提示后,我将“was_public.jar”复制到“was_public-8.0.0.jar”(在 IBM here 中描述)并将其添加到我的存储库中:

mvn install:install-file -Dfile="C:\Program Files (x86)\IBM\WebSphere\AppServer\dev\was_public-8.0.0.jar" -DpomFile="C:\Program Files (x86)\IBM\WebSphere\AppServer\dev\was_public-8.0.0.pom"

然后我将依赖项更改为:

<dependency>
<groupId>com.ibm.websphere.appserver</groupId>
<artifactId>was_public</artifactId>
<version>8.0.0</version>
<scope>provided</scope>
</dependency>

<dependency>
<groupId>com.ibm.websphere.appserver</groupId>
<artifactId>was</artifactId>
</dependency>

这有助于解决导入到 com.ibm.websphere 的编译错误。

我现在仍然打开的是 packages com.ibm.ws.* 包。有人有想法吗?

编辑 2我添加了以下依赖项,然后摆脱了 com.ibm.ws.* 导入错误。

<dependency>
<groupId>com.ibm.websphere.ws</groupId>
<artifactId>com.ibm.ws.runtime</artifactId>
<version>1.0.0</version>
</dependency>

但它仍然无法编译,因为现在无法找到间接引用(在我的例子中是 commonj.work.WorkManager)。看来我需要为每一件事添加更多的 .jars。难道没有更简单的方法来一次提供所有 websphere jar,如上面链接的教程中所述,使用 com.ibm.tools 依赖项(不起作用)?

最佳答案

一般来说,com.ibm.websphere 是供应用程序使用的公共(public) API(这适用于您上面列出的包),这与 was_public.jar

但是,com.ibm.ws 包一般是产品内部构件。请问您使用的是 com.ibm.ws.asynchbeans 包中的哪些接口(interface)方法?也许有一个公共(public) API 替代方案。

关于 commonj.work,我在 WebSphere Application Server 产品图像中唯一能找到它的地方是 WAS/plugins/com.ibm.ws.prereq.commonj-twm.jar 所以看起来您需要使用它来编译。

关于java - IBM Websphere 包的 Maven 依赖项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36564098/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com