5

在我正在工作的项目中,我们使用 maven 来管理依赖项。但是,我们遇到了 Apache 壁垒问题,它是 Axis2 的安全模块。我们尝试使用以下依赖项标签:

    <dependency>
        <groupId>org.apache.rampart</groupId>
        <artifactId>rampart</artifactId>
        <version>1.3</version>
        <type>mar</type>
    </dependency>

    <dependency>
        <groupId>org.apache.rampart</groupId>
        <artifactId>rampart</artifactId>
        <version>1.4</version>
        <type>mar</type>
    </dependency>

发生的情况是 maven 无法找到作为依赖项包含在 armart pom 文件中的许多资源(请注意,rampart pom 文件是由 maven 自动下载的,所以我不应该编辑这些文件)。

当输入 maven 无法找到的壁垒依赖项的 URI 时,我收到 404 错误。看起来 apache 壁垒 pom 文件已损坏...

有人成功地使用了maven的壁垒吗?是 apache 壁垒与 maven 的集成坏了吗?

4

2 回答 2

4

我刚遇到这个问题并找到了解决方法。不是添加壁垒依赖,而是在壁垒标准 dist 中添加所有库,即:

    <dependency>
        <groupId>org.apache.rampart</groupId>
        <artifactId>rampart-core</artifactId>
        <version>1.4</version>
        <exclusions>
            <exclusion>
                <groupId>bouncycastle</groupId>
                <artifactId>bcprov-jdk15</artifactId>
            </exclusion>
            <exclusion>
                <groupId>opensaml</groupId>
                <artifactId>opensaml</artifactId>
            </exclusion>
            <exclusion>
                <groupId>org.apache.santuario</groupId>
                <artifactId>xmlsec</artifactId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>org.bouncycastle</groupId>
        <artifactId>bcprov-jdk15</artifactId>
        <version>1.44</version>
    </dependency>
    <dependency>
        <groupId>org.opensaml</groupId>
        <artifactId>opensaml</artifactId>
        <version>1.1</version>
    </dependency>
    <dependency>
        <groupId>org.apache.santuario</groupId>
        <artifactId>xmlsec</artifactId>
        <version>1.4.3</version>
    </dependency>

注意:我更新了一些壁垒标准 dist 的版本,因为其中一些不在 maven 存储库中。

于 2009-12-29T13:47:33.610 回答
1

由于 .mar 包装,这是一个大问题,我真的很讨厌axis2项目选择工作的方式,无论如何你可以通过添加rampart-*.mar和所有必需的*.mar来获得这个工作

WEB-INF/lib 

文件夹,如果该文件夹不存在,则需要创建该文件夹。

并以 maven 的正常方式管理其他依赖项,例如:

org.apache.rampart 壁垒核心 1.4

<dependency>
    <groupId>org.apache.axis2</groupId>
    <artifactId>axis2-kernel</artifactId>
    <version>1.4.1</version>
</dependency>
于 2012-01-06T16:18:54.833 回答