java - 将外部库配置为 Glassfish 模块

标签 java maven glassfish osgi

我有几个使用外部库的 OSGI 包和 WAR 包:

       <dependencies>       
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-web-api</artifactId>
            <version>6.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.8.2</version>
            <scope>test</scope>
        </dependency>        
        <dependency>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.core</artifactId>
            <version>4.2.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.osgi</groupId>
            <artifactId>org.osgi.compendium</artifactId>
            <version>4.2.0</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>org.glassfish</groupId>
            <artifactId>osgi-cdi-api</artifactId>
            <version>3.1-b41</version>
            <type>jar</type>
            <scope>provided</scope>
        </dependency>

不是将库构建到每个 OSGI 包和 WAR 包中,而是可以将这些库复制到 Glassfish 服务器的/modules 目录中。我想可以只使用一份而没有任何问题吗?

编辑

我发现可以使用以下命令将这些库作为模块部署到 Glassfish 中:

[root@Testserver bin]# sh asadmin add-library/opt/primefaces.jar 但是,例如在一个简单的 WAR 包中,我需要修改什么才能使用 Glassfish 模块?我想 WAR 包必须配置为使用外部库吗?

最佳答案

我不认为问题出在你的 war 文件中,但为了确保你可以检查 MANIFEST 文件。如果 Import-Package header 正确,则您无法从 war 文件执行任何操作。如果是这种情况,则必须有一种方法可以说服 Glassfish 使模块对 Web 应用程序可见(抱歉,我不是 Glassfish 专家)。

否则,修复 Import-Package header (您现在可以手动完成)。

关于java - 将外部库配置为 Glassfish 模块,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10806578/

相关文章:

android - 使 AndroidAnnotations Maven 设置适应 Gradle

Java EE 7 教程,netbeans 找不到 glassfish

eclipse - 如何在glassfish服务器中通过jndi传递单值参数?

java - Google Weather API 返回的变音符号显示不正确

java - 如何将字符串转换为 JsonObject

java - 使用 h2 数据库的 JUnit 测试表现异常

java - "package jdk.jshell.spi does not exist"- 仅在一台电脑上出现错误

java - OSGi 客户端 + Apache Aries => 连接到 GlassFish 4

java - 使用 iText 读取 PDF 文档有时无法正常工作

Java:访问 ArrayList 中的 ArrayList?