从jar中提取后,可执行文件无效

时间:2014-11-25 18:31:44

标签: java c++ linux jar

我有一个java程序,我通过在C ++中执行部分代码进行了一些优化。我在自包含的runnable jar中包含了C ++可执行文件。当程序运行并且我需要使用此可执行文件时,我将其解压缩到当前文件夹并运行它。

我发现的问题是,当我提取文件时,它似乎不再被视为可执行文件。该文件在压缩到jar之前完全正常,但是在提取后我无法在shell中运行它。我也尝试使用java“jar xf”命令提取文件,看看我的代码是否有错误,我仍然发现同样的问题。

我当前的java版本是1.7.0.51,我正在让程序在目前停留在这个版本的java上的计算机上运行。

1 个答案:

答案 0 :(得分:1)

解压缩*.jar文件时,请在继续之前检查权限。 如果您具有可执行权限,如果您没有可执行权限,请更改它们。

chmod +X <executable>

如果这不起作用,请检查C ++可执行文件的文件格式。

file <executable>