1

我想构建一个生成 EJB 客户端以公开接口的 Maven EJB 项目。

当我在我的 POM 中使用它时它工作正常:

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-ejb-plugin</artifactId>
    <version>2.3</version>
    <configuration>
        <ejbVersion>3.1</ejbVersion>
        <generateClient>true</generateClient>
    </configuration>
</plugin>

内置了两个 JAR,target但在 Eclipse 中,我只有一个用于实现和接口的项目。

我想在 Eclipse 中创建两个单独的项目,一个用于接口,一个用于实现(当我们在没有 Maven 的情况下创建 EJB 项目时的 Eclipse 传统方式)。请问我该怎么做?

4

1 回答 1

1

好吧,我成功地在基于maven-archetype-quickstart原型的 Eclipse 2 Maven 项目中使用 M2E 构建,一个用于 ejb 实现 (ejb-impl),一个用于 ejb 客户端 (ejb-client)。

在 ejb-impl 中,我选择打包到ejb我的 ejb-client 中,我选择jar打包。

我使用 maven-ejb-plugin 插件从 ejb-impl 生成 ejb,我不使用 generateClient 选项(默认值已设置为 false)。

我使用 maven-ear-plugin 从 ejb-impl、ejb-client 和一些 war 模块 (jsf) 生成 ear。我使用 jarModule 来包含 ejb-client,所以它在lib目录下打包到 ear 文件中,因此无需修改清单或其他任何内容,其他模块可以轻松访问 ejb-client。

因此,有了 Maven,我现在可以只使用或分发 EJB 的接口方法而不是实现,并且没有冗余代码。

于 2012-10-26T12:33:25.760 回答