首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用mvn原型在aem6.2中不解析核心包- javax.inject无法解析。

使用mvn原型在aem6.2中不解析核心包- javax.inject无法解析。
EN

Stack Overflow用户
提问于 2016-11-28 22:26:44
回答 3查看 650关注 0票数 1

我正在尝试使用mvn原型(https://github.com/Adobe-Marketing-Cloud/aem-project-archetype)构建一个新项目,在部署时,核心包显示状态为“已安装”,但不能有效地显示错误。

代码语言:javascript
复制
javax.inject, version=[0.0,1) -- Cannot be resolved

我试图按照这里的建议添加依赖项(https://github.com/Adobe-Marketing-Cloud/aem-project-archetype/issues/59)

代码语言:javascript
复制
 <dependency>
    <groupId>org.apache.geronimo.specs</groupId>
    <artifactId>geronimo-atinject_1.0_spec</artifactId>
    <version>1.0</version>
    <scope>provided</scope>
</dependency>
<dependency>
    <groupId>javax.inject</groupId>
    <artifactId>javax.inject</artifactId>
    <version>1</version>
</dependency>

并且也尝试了这里列出的所有解决方案(updatedfro.html),但是它们没有解决。

感谢你在这里提供帮助。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-12-08 22:24:01

经过一些研究后,以下是解决上述问题的一些方法:

  1. 在HelloWorldModel.java中注释"@Inject“。这可能不是理想的,但如果你没有计划使用吊索模型,那么这将是可行的。 @Model(adaptables=Resource.class)公共类HelloWorldModel { //@Inject私有SlingSettingsService设置;//@Inject @命名(“吊索:资源类型”) @Default(values="No resourceType")受保护的字符串resourceType;
  2. 如果要使用AEM6.1或更高版本,请使用ACS's Lazybones模板而不是原型10。这是建议与AEM使用的模板,AEM更复杂和最新。
票数 0
EN

Stack Overflow用户

发布于 2017-01-09 08:08:01

在"javax.inject“插件标签下添加版本为"0.0.0,*”的Import标记如下:

代码语言:javascript
复制
<plugin>
    <groupId>org.apache.felix</groupId>
    <artifactId>maven-bundle-plugin</artifactId>
    <extensions>true</extensions>
    <configuration>
        <instructions>
          <!-- <Embed-Dependency>
                artifactId1,artifactId2;inline=true
          </Embed-Dependency> -->

          <!-- Import any version of javax.inject, to allow running on multiple versions of AEM -->
          <Import-Package>javax.inject;version=0.0.0,*</Import-Package>

          <Sling-Model-Packages>com.xyz.sample_test_impl.core</Sling-Model-Packages>
        </instructions>
     </configuration>
</plugin>
票数 2
EN

Stack Overflow用户

发布于 2017-04-23 18:17:50

尝试将依赖项列表与以下官方样本项目同步。事实上,这对我来说很有帮助

代码语言:javascript
复制
        <dependency>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
            <version>1</version>
            <scope>provided</scope>
        </dependency>

给一般的pom.xml和

代码语言:javascript
复制
        <dependency>
            <groupId>javax.inject</groupId>
            <artifactId>javax.inject</artifactId>
        </dependency>

它的子./core/头.

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40854622

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档