Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/397.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转换为单个.java文件的.jar或.exe_Java_Netbeans_Jar_Exe - Fatal编程技术网

将.java转换为单个.java文件的.jar或.exe

将.java转换为单个.java文件的.jar或.exe,java,netbeans,jar,exe,Java,Netbeans,Jar,Exe,我的项目中只有一个java文件,它只是从SQL数据库中获取数据并将其插入Oracle数据库,它从文本文件中获取输入。代码运行得很好,但是现在我被要求用这个java文件生成一个.exe 我已经在谷歌上搜索了一个解决方案,但没有结果。所有问题及其各自的答案都涉及整个项目。我只需要一个文件就可以了。此外,我尝试了使用NetBeans(我已经在上面编写了java文件)进行清理和构建,它确实生成了一个.jar文件,但标题是针对项目本身的 我的项目还有一些完全不相关的java文件。但我把它们放在一起,因为它

我的项目中只有一个java文件,它只是从SQL数据库中获取数据并将其插入Oracle数据库,它从文本文件中获取输入。代码运行得很好,但是现在我被要求用这个java文件生成一个.exe

我已经在谷歌上搜索了一个解决方案,但没有结果。所有问题及其各自的答案都涉及整个项目。我只需要一个文件就可以了。此外,我尝试了使用NetBeans(我已经在上面编写了java文件)进行清理和构建,它确实生成了一个.jar文件,但标题是针对项目本身的

我的项目还有一些完全不相关的java文件。但我把它们放在一起,因为它们是同一类型的


任何解决方案都将不胜感激

既然它只是一个文件,为什么不将代码复制并粘贴到NetBeans中的新项目中呢?这样,您将保持原始项目不变,并编译只包含必要代码的新项目。

在Netbeans中创建一个新项目

复制所有JAR,这些JAR是从您现有的大型项目支持到这个新项目的数据库连接所必需的。在probject设置中将这些JAR指定为库JAR后,请确保它们将与编译的java类一起打包

复制创建此数据库连接的java类

编译并构建新项目

使用“java-to-exe包装器”将生成的jar文件转换为exe

例如:


就是这样。

使用名为Jsmooth的工具。您可以使用它创建一个独立的.exe。 用于创建.jar文件。 在月食中

  • 转到“文件”菜单
  • 选择导出。。选择权
  • 选择“作为可运行jar文件”

如果您在windows上,您可以在linux上使用批处理文件或shell脚本来执行java文件。它必须是可执行文件还是批处理文件就足够了?我不清楚这个问题。起初我认为这是如何为JAR生成EXE,但听起来也像是如何编译单个(或选择几个)源文件。或者可能是两者的结合——但是一些澄清会很好。将
.class
放入一个Jar中,使用正确的
主类
清单条目,使用任何可用的包装器将Jar包装成一个可执行文件…@Fildor我被要求创建一个可执行文件。是的,我会试试,然后告诉你。但是NetBeans不是只允许构建jar吗?它也允许jar到exe的转换吗?我听说你可能需要某种插件来实现这一点。请问你为什么特别需要一个exe文件?因为这扼杀了Java跨平台的目的。我建议创建一个简单的批处理文件来运行.jar文件,并将它们放在同一个文件夹中。我知道确实如此。但是,这不是我的决定。有人告诉我,我做到了。我真不敢相信我在这么简单的事情上会如此愚蠢!谢谢,欧。您的答案是第一个,而且很有效。@ou_snaaksie批处理文件也不是很跨平台。那么,每个平台批处理文件和每个平台可执行文件之间的区别是什么?也就是说,Java的跨平台特性可以用于源代码和运行时环境,甚至可以忽略任何打包。将其转换为jar,jar本身是可执行的。然后我将其转换为exe。谢谢我使用NetBeans,并制作了一个jar文件。然后使用launch4j。