如果你在Maven中声明了一个依赖项,你可以添加一个类型,比如war,jar,ejb。Maven中的依赖:ejb类型的影响是什么?
据我所知编译类型为ejb的项目与编译类型为jar的项目不同,因为它触发了不同的生命周期。
但声明一个依赖有什么区别?
Maven dependency type ejb vs jar似乎问同样的问题,但接受的答案似乎很奇怪。我怀疑依赖项中的类型可能会触发生命周期。其实,我期望这种类型的ejb和类型的jar完全一样。有人可以阐明这一点吗?
如果你在Maven中声明了一个依赖项,你可以添加一个类型,比如war,jar,ejb。Maven中的依赖:ejb类型的影响是什么?
据我所知编译类型为ejb的项目与编译类型为jar的项目不同,因为它触发了不同的生命周期。
但声明一个依赖有什么区别?
Maven dependency type ejb vs jar似乎问同样的问题,但接受的答案似乎很奇怪。我怀疑依赖项中的类型可能会触发生命周期。其实,我期望这种类型的ejb和类型的jar完全一样。有人可以阐明这一点吗?
我怀疑,在依赖型可以触发一个生命周期
你不是一个人怀疑。
在声明与ejb
类型的依赖,你从有关ejb
作为Maven的提供的一些设施中获益:
添加在application.xml
的EJB的声明的能力。 从Java EE 5开始,它不再是必需的。
检查依赖关系是EJB还是不是简单的JAR。
以及其他一些小问题。
,如果你用罐子type
声明你的依赖你就没有这些设施。
正如你可以看到,它并没有在很多事情改变,但无论如何,在这两种情况下,它是用于依赖同一个JAR。
你不指ejb-client
类型,但它往往是因为违背了与使用相同的罐子,当你在依赖声明ejb-client
类型jar
或ejb
类型的依赖的情况下,更有趣的东西,你依赖于一个不同的jar,因为这个jar应该只包含API类来调用ejb
。
当然,如果我们想要我们的ejb
的版本ejb-client
,我们必须在产生ejb
的工件中指定它。
也许更多的想法,可以添加,但没错,他们应该表现在完全相同的方式,只有[在Maven的乙醚提供商例如源代码PEEK(HTTPS为“文档”的目的不同(:/ /github.com/apache/maven/blob/maven-3.3.9/maven-aether-provider/src/main/java/org/apache/maven/repository/internal/MavenRepositorySystemUtils.java#L115-L116))。如果您有一个包装EJB的项目,即' ejb ',则不是依赖于EJB,而是启动不同的生命周期。 –
Tunaki