Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Cannot find a spring-aspects-4 dependency

I want to upgrade my project to spring 4, however, I get a missing dependency for aspectweaver-1.8.0.M1.jar. When I take a look at the dependency hierarchy, I see that this file is needed by spring-aspects-4.0.0, which has the following in its own pom.xml

<dependency>
  <groupId>org.aspectj</groupId>
  <artifactId>aspectjweaver</artifactId>
  <version>1.8.0.M1</version>
  <scope>compile</scope>
</dependency>

After checking maven repository, I wasn't able to find this artifact since the latest stable version of aspectweaver is 1.7.4.

Now I can't understand two things:

  1. Since the scope of this dependency is compile why does my application need it ? I don't want to compile the spring-aspects.jar !!

  2. Why is spring-aspects-4.0.0.jar (which is stable) using a non-stable version of a component ? Wouldn't that make spring-aspects-4.0.0 also non-stable ?

Thanks

like image 521
Serafeim Avatar asked Dec 20 '13 07:12

Serafeim


1 Answers

According to a reported issue at springsource, aspectjweaver is "basically identical to AspectJ 1.7" except that it has early support for Java 8.

As I don't need Java 8 support, I basically added a compile dependency to the latest release version of aspectweaver:

<dependency>
  <groupId>org.aspectj</groupId>
  <artifactId>aspectjweaver</artifactId>
  <version>1.7.4</version>
</dependency>

This ensures that the 1.7.4 is used instead of the milestone release, and is an acceptable workaround for me, for the time being.

like image 144
reidarok Avatar answered Sep 30 '22 04:09

reidarok