为什么控制台一直说 "uber-jar-6.5.5 seems corrupted"
Why does console keeps saying "uber-jar-6.5.5 seems corrupted"
我正在使用此命令 (mvn clean install -PautoInstall) 将我的项目从 IntelliJ 安装到 aem,但我一直遇到此错误
JAR/ZIP 文件 (C:\Users....m2\repository\com\adobe\aem\uber-jar.5.5\uber-jar-6.5.5.jar) 似乎已损坏,错误:错误打开 zip 文件
我已经尝试删除和下载 uber-jar 但无济于事。
这是我的核心Pom.xml
4.0.0
com.startsite
起点
1.0-快照
../pom.xml
<artifactId>startsite.core</artifactId>
<packaging>bundle</packaging>
<name>Start Site - Core</name>
<description>Core bundle for Start Site</description>
<build>
<plugins>
<plugin>
<groupId>org.apache.sling</groupId>
<artifactId>maven-sling-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
<configuration>
<instructions>
<!-- 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.startsite.core
</Sling-Model-Packages>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- OSGi Dependencies -->
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.core</artifactId>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.cmpn</artifactId>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
</dependency>
<!-- Other Dependencies -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>javax.jcr</groupId>
<artifactId>jcr</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<classifier>apis</classifier>
</dependency>
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.models.api</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
</dependency>
<dependency>
<groupId>junit-addons</groupId>
<artifactId>junit-addons</artifactId>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<version>6.5.5</version>
</dependency>
<dependency>
<groupId>com.day.commons</groupId>
<artifactId>day.commons.datasource.poolservice</artifactId>
<version>1.0.10</version>
</dependency>
</dependencies>
尝试删除本地 ~/.m2 存储库,然后重试。
Why does console keeps saying "uber-jar-6.5.5 seems corrupted"
会说因为文件已损坏...或者根本不是 JAR 文件。
看看(假定的)JAR 文件中的实际内容:
使用jar -tvf <pathname>
列出索引。那应该告诉你文件是否损坏,等等。
在 linux 上,使用 file <pathname>
尝试确定文件的真实类型。
如果是文本,请使用文本编辑器查看。
(我的猜测是文件没有正确下载。我的第二个猜测是你实际拥有的是一个 HTML 文档,其中包含下载失败的错误消息。如果是这种情况,错误消息中应该有一些关于下载失败原因的线索。)
看看 pom.我看到 uber-jar 声明了两次,删除第一个并只保留上面有版本的那个。此外,uber-jar 应该具有提供的范围:
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<version>6.5.8</version>
<scope>provided</scope>
</dependency>
然后,从您的 m2 文件夹中删除 uber-jar 并执行 mvn -U clean install -PautoInstall
我找到了解决此问题的替代方案。我使用 Eclipse neon 而不是通常的 eclipse 和 intellij。新创建的项目现在可以工作了,除了我之前在 Intellij 和 eclipse 上编译的项目。
我正在使用此命令 (mvn clean install -PautoInstall) 将我的项目从 IntelliJ 安装到 aem,但我一直遇到此错误
JAR/ZIP 文件 (C:\Users....m2\repository\com\adobe\aem\uber-jar.5.5\uber-jar-6.5.5.jar) 似乎已损坏,错误:错误打开 zip 文件
我已经尝试删除和下载 uber-jar 但无济于事。
这是我的核心Pom.xml
4.0.0 com.startsite 起点 1.0-快照 ../pom.xml
<artifactId>startsite.core</artifactId>
<packaging>bundle</packaging>
<name>Start Site - Core</name>
<description>Core bundle for Start Site</description>
<build>
<plugins>
<plugin>
<groupId>org.apache.sling</groupId>
<artifactId>maven-sling-plugin</artifactId>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<executions>
<execution>
<id>bundle-manifest</id>
<phase>process-classes</phase>
<goals>
<goal>manifest</goal>
</goals>
</execution>
</executions>
<configuration>
<instructions>
<!-- 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.startsite.core
</Sling-Model-Packages>
</instructions>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- OSGi Dependencies -->
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.core</artifactId>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.cmpn</artifactId>
</dependency>
<dependency>
<groupId>org.osgi</groupId>
<artifactId>osgi.annotation</artifactId>
</dependency>
<!-- Other Dependencies -->
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
</dependency>
<dependency>
<groupId>javax.jcr</groupId>
<artifactId>jcr</artifactId>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<classifier>apis</classifier>
</dependency>
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.models.api</artifactId>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
</dependency>
<dependency>
<groupId>junit-addons</groupId>
<artifactId>junit-addons</artifactId>
</dependency>
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<version>6.5.5</version>
</dependency>
<dependency>
<groupId>com.day.commons</groupId>
<artifactId>day.commons.datasource.poolservice</artifactId>
<version>1.0.10</version>
</dependency>
</dependencies>
尝试删除本地 ~/.m2 存储库,然后重试。
Why does console keeps saying "uber-jar-6.5.5 seems corrupted"
会说因为文件已损坏...或者根本不是 JAR 文件。
看看(假定的)JAR 文件中的实际内容:
使用
jar -tvf <pathname>
列出索引。那应该告诉你文件是否损坏,等等。在 linux 上,使用
file <pathname>
尝试确定文件的真实类型。如果是文本,请使用文本编辑器查看。
(我的猜测是文件没有正确下载。我的第二个猜测是你实际拥有的是一个 HTML 文档,其中包含下载失败的错误消息。如果是这种情况,错误消息中应该有一些关于下载失败原因的线索。)
看看 pom.我看到 uber-jar 声明了两次,删除第一个并只保留上面有版本的那个。此外,uber-jar 应该具有提供的范围:
<dependency>
<groupId>com.adobe.aem</groupId>
<artifactId>uber-jar</artifactId>
<version>6.5.8</version>
<scope>provided</scope>
</dependency>
然后,从您的 m2 文件夹中删除 uber-jar 并执行 mvn -U clean install -PautoInstall
我找到了解决此问题的替代方案。我使用 Eclipse neon 而不是通常的 eclipse 和 intellij。新创建的项目现在可以工作了,除了我之前在 Intellij 和 eclipse 上编译的项目。