java - Maven 依赖项在 Spring 配置中不可见

标签 java spring maven

我有一个名为 myjar 的依赖项目。我将其安装在本地 Maven 存储库中。

然后在我的主项目中,我将依赖项包含在我的 pom.xml 中:

<dependency>
    <groupId>com.mygroupid</groupId>
    <artifactId>myjar</artifactId>
    <version>1.0</version>
</dependency>

现在我的主项目中有一些 Spring 配置,我想在其中引用依赖项 jar:

<list>
    <value>myjar-1.0.jar</value>
</list>

但是上面这行代码不起作用。

但是我不想创建包含所有依赖项的 uber-jar,我只想从本地存储库访问我的依赖项。

那么我应该如何重写上面的 Spring 配置才能做到这一点?

最佳答案

由于 Maven 依赖项具有编译范围,因此该 JAR 的内容将在应用程序的类路径上可用。不要试图引用 JAR 来获取映射文件,而是从类路径中获取它们,如 this answer 中所示。 ,即使用 mappingLocationsclasspath:...file.xml

如果由于某种原因这不起作用并且您确实需要引用 JAR 文件,则 mappingJarLocations 的参数是 Spring 资源。如果您不在 Servlet 容器中,则可以使用 file:///path/to/jar;如果您不在 Servlet 容器中,则可以从 WEB-INF 中提取它/lib 如链接的答案中所示。

关于java - Maven 依赖项在 Spring 配置中不可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25386409/

相关文章:

java - 如何在GWT客户端使用Spring授权

spring - War 文件,由 Gradle 构建,找不到带空格的资源

java - 如何从自定义 Mojo 中获取 Maven 二进制版本?

java - 我应该如何编写 .i 文件以用 Java 或 C# 包装回调

java - 使用 AtomicIntegerArray 在 Java 中实现 AtomicByteArray

java - Spring in Action 3 AOP引发问题的例子

java - 手动创建 SolrCrudRepository

java - org.openqa.selenium.WebDriverException : unknown error: Chrome failed to start: crashed (headless chrome)

java - 使用 SpringMVC,未注入(inject) DaoImpl

java - Eclipse SWT : Display. 从同步方法调用syncExec()