Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用maven创建的.jar文件不会打开_Java_Xml_Maven_Jar - Fatal编程技术网

Java 使用maven创建的.jar文件不会打开

Java 使用maven创建的.jar文件不会打开,java,xml,maven,jar,Java,Xml,Maven,Jar,我只是遇到了一个无法摆脱的问题,就像在标题中一样,当我使用netbeans从maven项目构建.jar时,它不会在IDE之外打开。 在IDE中使用run按钮可以完美地运行应用程序,不会出现问题,但builded.jar不会打开。jar来自其他项目,工作正常,这是我第一次用maven构建东西,所以我认为问题就在那里 这是我的pom文件,希望问题在这里: <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://ma

我只是遇到了一个无法摆脱的问题,就像在标题中一样,当我使用netbeans从maven项目构建.jar时,它不会在IDE之外打开。 在IDE中使用run按钮可以完美地运行应用程序,不会出现问题,但builded.jar不会打开。jar来自其他项目,工作正常,这是我第一次用maven构建东西,所以我认为问题就在那里

这是我的pom文件,希望问题在这里:

<?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/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.bbzoftware</groupId>
    <artifactId>HDiSED</artifactId>
    <version>1.0-SNAPSHOT</version>
    <packaging>jar</packaging>

    <properties>
        <springframework.version>4.0.6.RELEASE</springframework.version>
        <hibernate.version>4.3.5.Final</hibernate.version>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <maven.compiler.source>1.7</maven.compiler.source>
        <maven.compiler.target>1.7</maven.compiler.target>
    </properties>

    <dependencies>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-entitymanager</artifactId>
            <version>${hibernate.version}</version>
        </dependency>
        <dependency>
            <groupId>org.hibernate</groupId>
            <artifactId>hibernate-core</artifactId>
            <version>${hibernate.version}</version>
        </dependency>

        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.31</version>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.9</version>
        </dependency>
        <dependency>
            <groupId>commons-dbcp</groupId>
            <artifactId>commons-dbcp</artifactId>
            <version>1.4</version>
        </dependency>
        <dependency>
            <groupId>com.itextpdf</groupId>
            <artifactId>itextpdf</artifactId>
            <version>5.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-context</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-tx</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjweaver</artifactId>
            <version>1.7.2</version>
        </dependency> 
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-orm</artifactId>
            <version>${springframework.version}</version>
        </dependency>
        <dependency>
            <groupId>javax</groupId>
            <artifactId>javaee-web-api</artifactId>
            <version>7.0</version>
            <scope>provided</scope>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
              <groupId>org.apache.maven.plugins</groupId>
              <artifactId>maven-shade-plugin</artifactId>
              <version>2.3</version>
              <executions>
                <execution>
                  <phase>package</phase>
                  <goals>
                    <goal>shade</goal>
                  </goals>
                  <configuration>
                    <transformers>
                      <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                        <manifestEntries>
                          <Main-Class>com.bbzoftware.hdised.controller.Main</Main-Class>
                          <Build-Number>123</Build-Number>
                        </manifestEntries>
                      </transformer>
                    </transformers>
                  </configuration>
                </execution>
              </executions>
            </plugin>
        </plugins>
    </build>
</project>

4.0.0
com.bbzoftware
HDiSED
1.0-快照
罐子
4.0.6.1发布
4.3.5.最终版本
UTF-8
1.7
1.7
org.hibernate
休眠实体管理器
${hibernate.version}
org.hibernate
冬眠核心
${hibernate.version}
mysql
mysql连接器java
5.1.31
通用编解码器
通用编解码器
1.9
公共dbcp
公共dbcp
1.4
com.itextpdf
itextpdf
5.5.2
org.springframework
spring上下文
${springframework.version}
org.springframework
德克萨斯州春季
${springframework.version}
org.aspectj
aspectjweaver
1.7.2
org.springframework
春季甲虫
${springframework.version}
爪哇
javaeewebapi
7
假如
org.apache.maven.plugins
maven阴影插件
2.3
包裹
阴凉处
com.bbzoftware.hdised.controller.Main
123

找到您的jar文件,并尝试使用例如7zip打开它。
Jar文件只是一个存档文件。

在这里打开是什么意思?执行?或者使用zip实用程序打开?通过双击或控制台执行。您可能需要使用类似maven Dependency plugin的插件将maven依赖项复制到lib目录,或者将它们打包到jar中。您还需要为manfiest中的每个依赖项设置类路径条目。您可以通过使用java-jar-MyJarsName.jar从shell(cmd或终端)启动jar来检查依赖关系是否存在问题。如果您提供了堆栈跟踪,则更容易判断问题所在。只需使用cmd中的>>或终端中的|将输出重定向到某个文本文件。更可能的是,maven没有将
MANIFEST.MF
放在jar的
META-INF
目录中。遗憾的是,默认插件生成的是一个库jar,而不是一个可执行的jar——而且我对maven还不够精通,无法为您提供解决方案:-(您需要配置pom以生成可执行的jar。检查问题,它会尝试完成相同的操作。我需要执行它,而不是检查内部内容。在7zip中打开的项目看起来很正常,只是不执行而已。)。