Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/313.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/visual-studio/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将JBoss7中的库链接为模块目录_Java_Ant_Jboss7.x - Fatal编程技术网

Java 将JBoss7中的库链接为模块目录

Java 将JBoss7中的库链接为模块目录,java,ant,jboss7.x,Java,Ant,Jboss7.x,如果JBossAS7中/modules目录下有一个库,那么在我的项目中引用它的最佳方式是什么 我正在从事一个项目,该项目过去只是将每个模块的依赖项扔到一个与/src并行的/lib文件夹中。Ant构建只会引用那些/lib文件夹 我并不是简单地将JBoss投入到源代码管理中,尽管我并不期待通过它们的/modules子目录引用每个库。有更好的办法吗 如果它提供了解决问题的其他途径:我正在使用IntelliJ IDEA,尽管使用的是Ant构建而不是默认的Make构建,我们需要Ant构建从命令行开始工作。

如果JBossAS7中
/modules
目录下有一个库,那么在我的项目中引用它的最佳方式是什么

我正在从事一个项目,该项目过去只是将每个模块的依赖项扔到一个与
/src
并行的
/lib
文件夹中。Ant构建只会引用那些
/lib
文件夹

我并不是简单地将JBoss投入到源代码管理中,尽管我并不期待通过它们的
/modules
子目录引用每个库。有更好的办法吗


如果它提供了解决问题的其他途径:我正在使用IntelliJ IDEA,尽管使用的是Ant构建而不是默认的Make构建,我们需要Ant构建从命令行开始工作。

JBoss AS7有一个隐式模块依赖的概念。 JPA、CDI等模块的依赖项将自动添加。 您可以在此处查看完整列表:

否则,您将需要添加一个Dependencies:manifest条目

此条目由部署所需的以逗号分隔的模块名称列表组成。可用的模块可以在ApplicationServer发行版的模块目录下看到

例如,要添加对javassist和apache velocity的依赖项,可以添加清单条目,如下所示:

依赖项:org.javassist导出,org.apache.velocity导出服务,org.antlr

您可以在此处阅读更多内容:

如果您不想使用依赖关系管理器(Maven、Ivy等),您可以将它们签入JBoss安装文件夹或在其中引用它们。如果您决定这样做,您可能需要一个指向JBoss安装的变量。您需要能够区分来自JBoss的依赖项和其他依赖项。您需要随我们的应用程序打包的后一个,前一个不能进入您的应用程序,但需要在中引用(除非)


就我个人而言,我建议使用依赖项管理器,它们支持仅在编译时需要的依赖项,并且将在运行时提供。它们还提供了JUnit等功能,这些功能仅是测试所需,而不是应用程序所需。

我为我可能愚蠢的问题道歉,但我对java还不是很了解。我得到的印象是,这个清单文件与AS在部署/运行时加载的JAR相关。我正在使用Ant进行构建,在编译时需要引用这些jar文件。清单解决方案也适用于此场景吗?与Maven一起使用,因为ANT会将它们放在WEB-INF/Lib文件夹中,这会破坏我将它们链接到位的目的。所以你基本上是在告诉我新的JBoss服务器是围绕Maven构建的,并且不能很好地直接支持其他构建系统——这是正确的吗?顺便说一句,这不是你的错,你只是信使;)我想我找到了一个解决方案,使用通配符指定
.jar
文件相对于
模块
目录(
***.jar
)的位置。你知道这样行不行吗?(我当然会亲自尝试)嗯,这里没有maven的特别之处。只需添加清单头,可以使用Ant,也可以自己编辑文件。你不需要maven来做那件事。