Java 找不到spring-aspects-4依赖项
我想将我的项目升级到Spring4,但是,我缺少对aspectweaver-1.8.0.M1.jar的依赖。当我查看依赖层次结构时,我看到spring-aspects-4.0.0需要这个文件,它在自己的pom.xml中有以下内容Java 找不到spring-aspects-4依赖项,java,spring,maven,spring-aop,Java,Spring,Maven,Spring Aop,我想将我的项目升级到Spring4,但是,我缺少对aspectweaver-1.8.0.M1.jar的依赖。当我查看依赖层次结构时,我看到spring-aspects-4.0.0需要这个文件,它在自己的pom.xml中有以下内容 <dependency> <groupId>org.aspectj</groupId> <artifactId>aspectjweaver</artifactId> <version>1
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.8.0.M1</version>
<scope>compile</scope>
</dependency>
org.aspectj
aspectjweaver
1.8.0.M1
编译
在检查maven repository之后,我无法找到这个工件,因为aspectweaver的最新稳定版本是1.7.4
现在我不明白两件事:
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>1.7.4</version>
</dependency>
org.aspectj
aspectjweaver
1.7.4
这确保了使用1.7.4而不是里程碑版本,并且目前对我来说是一个可接受的解决方案。要解决aspectjweaver依赖关系,请添加此存储库:
<repository>
<id>spring-milestones</id>
<url>http://repo.spring.io/milestone</url>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
不用担心,它工作正常。这是一个maven antrun插件命名约定
总有一天,aspectj maven插件将被更新以支持Java8,然后我们可以恢复正常。也就是说,showWeaveInfo=“true”日志记录要好得多
希望这有帮助。和我之前的许多人一样,我花了很多啤酒才弄明白这一点 您可能需要添加适当的里程碑存储库;我不知道是哪一个。关于
springaspects
依赖关系的好问题,我会针对它提交一个bug。我再次检查了springaspects的依赖关系,但找不到任何里程碑存储库!它从哪里下载aspectjweaver 1.8.0.M1?它似乎在依赖项管理中使用gradle。在文件中,我可以看到ext.aspectjVersion=“1.8.0.M1”
。您是否也可以回答我的问题1:“既然此依赖项的范围是compile,为什么我的应用程序需要它?”?此外,在springsource的jira中提到,“如果这还需要一段时间,我们可能必须正式记录如何用AspectJ 1.7替换任何相关人员的依赖关系”。您能否在回答中也包括这一点(将aspectjweaver的1.8.0.M1的依赖项替换为1.7.4)?范围为“compile”的依赖项并不意味着您将实际编译它。这只意味着编译项目需要工件。如果您使用“mvn包”,它也会包含在war文件中。顺便说一下,编译范围是默认范围。+1这是一个非常详细的解释。如果您有时间,请添加一个示例来支持您所做的以下陈述。“您可能能够在spring aspects 4.0.0依赖项中插入aspectjweaver 1.8.0.M1的排除项。这可能允许您将spring 4与Java 7以及所有1.7.4 aspectj*依赖项一起使用。”FWIW,我已经更新了pom.xml,以反映spring和aspectj的最新版本。aspectj maven插件尚未针对Java 8进行更新。pom.xml包含与原始帖子相关的详细注释,希望能让事情更清楚一些。
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.6</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
<complianceLevel>1.7</complianceLevel>
<aspectLibraries>
<aspectLibrary>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</aspectLibrary>
</aspectLibraries>
<showWeaveInfo>true</showWeaveInfo>
</configuration>
<executions>
<execution>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
</plugin>
aspectPath="${org.springframework:spring-aspects:jar}"