I've just updated from 6.1 to 6.2 and suddenly my sling models are causing problems. It seems like javax.inject is no longer available and so my bundle wont start. I have tried adding to my top level pom a dependancy but it is still not happy.
Error:
javax.inject,version=[0.0,1) -- Cannot be resolved
Dependancy added:
<dependency>
<groupId>javax.inject</groupId>
<artifactId>javax.inject</artifactId>
</dependency>
Solved! Go to Solution.
Hi,
Please add:-
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-atinject_1.0_spec</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
1. Go to depfinder:- http://localhost:4502/system/console/depfinder
2. add "javax.inject.Inject"
Result will be:-
I hope this will help you.
Thanks and Regards
Kautuk Sahni
Hi,
Please add:-
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-atinject_1.0_spec</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
1. Go to depfinder:- http://localhost:4502/system/console/depfinder
2. add "javax.inject.Inject"
Result will be:-
I hope this will help you.
Thanks and Regards
Kautuk Sahni
Got it thanks, wasn't aware of the dependency finder tool so thanks for that as well!
Views
Replies
Total Likes
I think this has to do with some dependency referencing specific to AEM 6.2.
A solution can be found here http://www.codermag.net/2016/10/javax-inject-version-cannot-be-resolved-in-AEM.html
Views
Replies
Total Likes
Known issue with the archetype: https://github.com/Adobe-Marketing-Cloud/aem-project-archetype/commit/e8239a911fe08029f7e7abfe210f1e...
Views
Replies
Total Likes
kautuksahni wrote...
Hi,
Please add:-
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-atinject_1.0_spec</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
1. Go to depfinder:- http://localhost:4502/system/console/depfinder
2. add "javax.inject.Inject"
I hope this will help you.
Thanks and Regards
Kautuk Sahni
I'm able to find javax.inject.Inject as shown in the screenshot, what do i need to do then? I cannot see my project's package here in the list though? And the error still persists. My bundle is not Active.
Views
Replies
Total Likes
See the 6.2 video and article here:
http://scottsdigitalcommunity.blogspot.ca/2016/06/working-with-sling-models-in-adobe.html
The link shared by Scott actually contains the solution for this problem. Adding the below so that it can save some time to straight way have the fix.
Problem:
created a AEM project using Maven archetype and when installing to AEM 6.3 I find the below error.
Solution:
Adding below to the core pom.xml
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<classifier>obfuscated-apis</classifier>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-atinject_1.0_spec</artifactId>
</dependency>
Adding below to main pom.xml
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<version>6.3.0</version>
<classifier>obfuscated-apis</classifier>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-atinject_1.0_spec</artifactId>
<version>1.0</version>
<scope>provided</scope>
</dependency>
Views
Replies
Total Likes
I got the solutions, please find add the below code in core pom.xml file(i.e. find <instructions> and next to add <Import-Package>javax.inject;version=0.0.0,*</Import-Package>). The below solutions is required because in aem 6.2 default javax.inject is there so we just need to import this.
<instructions>
<Import-Package>javax.inject;version=0.0.0,*</Import-Package>
Views
Likes
Replies