簡體   English   中英

如何在C ++ Linux中執行程序

[英]How to execute a program in C++ Linux

我有一個cpp項目,它執行另一個程序。
這是我的測試:

int main() {
    execl("java -jar /pathOfJAR/myjar.jar", NULL);

    return 0;
}

我運行了這個項目,卻一無所獲。

然后我像這樣嘗試:

execl("java", "-jar", "/pathOfJAR/myjar.jar");

我收到一個錯誤:

錯誤:找不到或加載主類.pathOfJAR.myjar.jar

但是,我可以在終端中運行命令:

java -jar /pathOfJAR/myjar.jar

我會得到正確的結果。

如何使用函數execl或我使用了錯誤的函數?

嘗試:

execl("/bin/java", "java", "-jar", "/pathOfJAR/myjar.jar", NULL);

請注意,“ / bin / java”應替換為Java解釋器的完整路徑,最容易確定是使用which java

該錯誤消息來自Java,而不是來自execl。 確保jar文件的清單具有Main-Class屬性。

從C ++程序調用之前,請在命令行中運行jar並測試其是否有效。

您為什么仍要構建C ++包裝器? 您可能希望將外殼包裝視為(如果您完全需要包裝)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM