当我使用此命令行执行.jar时(它是脚本中的命令):
./MyJar.jar AUTO
我有这些错误:
./MyJar.jar: 1: ./MyJar.jar: PK: not found
./MyJar.jar: 2: ./MyJar.jar:: not found
./MyJar.jar: 3: ./MyJar.jar: ��H: not found
./MyJar.jar: 4: ./MyJar.jar:: not found
./MyJar.jar: 5: ./MyJar.jar: Ant-Version:: not found
./MyJar.jar: 6: ./MyJar.jar: Syntax error: "(" unexpected
但是当我使用这个命令行执行时,它可以工作:
java -jar MyJar.jar
答案 0 :(得分:1)
我找到了第二个问题的答案。为了能够以这种方式执行我的jar:
./MyJar.jar AUTO
我需要安装binfmt-support软件包:
sudo apt-get install binfmt-support
答案 1 :(得分:1)
通常,如果任何尝试由Linux终端文件头信息直接执行的文件应由OS识别。 例如:
self.view = pg.GraphicsLayoutWidget()
self.w1 = self.view.addPlot(row=0, col=0, title = 'Data1')
self.w2 = self.view.addPlot(row=0, col=1, title = 'Data2')
qGraphicsGridLayout = self.view.ci.layout
qGraphicsGridLayout.setColumnStretchFactor(0, 2)
qGraphicsGridLayout.setColumnStretchFactor(1, 1)
或
#!/bin/bash
echo "Hello World"
你可以看到操作系统会理解第一个脚本应该由/ bin / bash解释器运行,第二个是python解释器。
似乎操作系统不了解如何执行./MyJar.jar文件。 但是jar可以直接理解你的文件内容