java - 在 NetBeans 中生成可执行 jar

标签 java netbeans jar executable manifest

我使用的是 NetBeans 6.5,由于某种原因,它不会“开箱即用”生成可执行 jar。

我将我的项目设置为主项目,在项目属性“运行”菜单中定义了主类,当我按 F6 运行它时它可以正常工作。

我查看了manifest文件,确实没有定义主类,也省略了库依赖。



我错过了什么吗?有没有办法(除了手动更改 list 文件)来生成可执行的 jar 文件?

编辑:是的,我尝试清理和重建,它在 dist 文件夹中生成了 jar,仍然具有相同的 manifest.mf

Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.1
Created-By: 10.0-b23 (Sun Microsystems Inc.)

最佳答案

我刚刚在 NetBeans 7.2.1 的 Maven Java 应用程序项目中遇到了同样的问题。修改 pom.xml 文件以包含 maven assembly plugin对 myrho 的答案进行一次调整(需要引用预定义的描述符“jar-with-dependencies”):

<plugin>
    <artifactId>maven-assembly-plugin</artifactId>
    <version>2.4</version>
    <configuration>
        <descriptorRefs>
            <descriptorRef>jar-with-dependencies</descriptorRef>
        </descriptorRefs>
        <archive>
            <manifest>
                <mainClass>your.app.MainClass</mainClass>
            </manifest>
        </archive>
    </configuration>
    <executions>
        <execution>
            <id>make-assembly</id>
            <phase>package</phase>
            <goals>
                <goal>single</goal>
            </goals>
        </execution>
    </executions>
</plugin>

另一种方法是在不使用 Maven 的 NetBeans 中构建 Java 应用程序项目。选择 File -> Project Properties -> Build -> Packaging 并选中“Copy Dependent Libraries”复选框。

关于java - 在 NetBeans 中生成可执行 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/602537/

相关文章:

java - 方法不适用于接口(interface) : throw Exception or ignore silently? 的实现

java - 在java中按负数移位

java - 粘贴到循环/if 语句时,如何使 NetBeans 自动格式化缩进?

java - 如何运行一个包含依赖库的jar?

java - 有没有办法在终端中执行包含单个单词(或短语)的 jar 文件?

java - JSON 在解析时不返回任何输出

java - Spring Boot中取消授权

java - 如何使用 valueChangeListener 获取 bean 中的 selectManyCheckbox 值?

java - 删除 junit 测试以在 ant 中构建

eclipse - 在 Eclipse 中,如何在 Maven 管理的依赖项中搜索类?