相关疑难解决方法(0)

由Maven shade插件构建的无效或损坏的JAR文件

将Maven jFree依赖项添加到现有应用程序后,我无法执行创建的jar.

我得到的唯一错误消息如下:

java -jar target/com.company.product-1.0.0-SNAPSHOT.jar 
Error: Invalid or corrupt jarfile target/com. company.product-1.0.0-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)

完整pom.xml看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion
<groupId>com.mycompany</groupId>
<artifactId>com.mycompany.test</artifactId>
<name>${project.artifactId}</name>
<version>1.0.0-SNAPSHOT</version>

<properties>
    <java-version>1.7</java-version>
    <org.springframework-version>3.1.1.RELEASE</org.springframework-version>
    <org.springframework.data-version>1.0.3.RELEASE</org.springframework.data-version>
    <org.springframework.ws-version>2.0.4.RELEASE</org.springframework.ws-version>
    <org.springframework.ws.oxm-version>1.5.10</org.springframework.ws.oxm-version>
    <org.aspectj-version>1.6.12</org.aspectj-version>
    <org.slf4j-version>1.5.10</org.slf4j-version>
    <selenium-java-version>2.25.0</selenium-java-version>
    <browser-mob-version>2.0-beta-6</browser-mob-version>
</properties>

<dependencies>

    <!-- Hint A: If we delete this dependency it works -->
    <dependency>
        <groupId>org.jfree</groupId>
        <artifactId>jfreechart</artifactId>
        <version>1.0.14</version>
                    <exclusions>
            <exclusion>
                <artifactId>itext</artifactId>
                <groupId>com.lowagie</groupId>
            </exclusion>
        </exclusions>
    </dependency>

    <dependency>
        <groupId>com.itextpdf</groupId>
        <artifactId>itextpdf</artifactId>
        <version>5.3.2</version>
    </dependency>

    <dependency>
        <groupId>de.schlichtherle.io</groupId>
        <artifactId>truezip</artifactId>
        <version>6.6</version>
    </dependency>

    <dependency>
        <groupId>log4j</groupId>
        <artifactId>apache-log4j-extras</artifactId>
        <version>1.1</version>
    </dependency>

    <!-- Caching …
Run Code Online (Sandbox Code Playgroud)

java jfreechart maven maven-shade-plugin

34
推荐指数
2
解决办法
2万
查看次数

尝试创建jar时清单文件中的行太长

在尝试构建jar时,我遇到了太长的行错误.清单文件中的长行是Class-Path行,因为应用程序使用了许多第三方库.不用说,我正在使用Windows :-(和Eclipse Java 1.6

我想Class-Path: lib还是Class-Path: lib/,但他们没有工作.

java jar manifest classpath

15
推荐指数
3
解决办法
2万
查看次数

创建jar存档时出错包含超过65535个条目

我正在尝试构建一个jar文件并获取错误Build Failed.

创建jar的问题:存档包含超过65535个条目.(并且存档可能已损坏,但我无法将其删除)

我正在使用Eclipse Neon Release 1和JDK 1.8.0_101,而eclipse中的Ant版本是1.9.6.

下面是我的ant构建文件: -

<property name="jar.name" value="ABC.jar" />
<property name="source.root" value="src" />
<property name="class.root" value="bin" />
<property name="lib.dir" value="lib" />
<property name="jar.dir" value="C:\D\ABC-Exe" />
<property name="Main-Class" value="com.abc.xxx.main.ABCEval" />
<property name="conf.pkj" value="com/abc/xxx/business/configurations" />
<property name="img.pkj" value="com/abc/xxx/business/images" />

<path id="project.class.path">
    <pathelement location="${class.root}" />
    <fileset dir="${lib.dir}">
        <include name="*.jar" />
    </fileset>
</path>

<target name="clean" description="cleans up build structures">
    <delete dir="${class.root}" />
    <delete file="${jar.dir}/${jar.name}" />
</target>

<target name="prepare" description="sets up build structures">
    <mkdir dir="${class.root}" />
</target>

<target name="compile" depends="prepare" …
Run Code Online (Sandbox Code Playgroud)

java eclipse ant

4
推荐指数
1
解决办法
4509
查看次数

标签 统计

java ×3

ant ×1

classpath ×1

eclipse ×1

jar ×1

jfreechart ×1

manifest ×1

maven ×1

maven-shade-plugin ×1