如何在linux中用C ++代码调用java -classpath

时间:2012-02-07 02:40:04

标签: java linux

我在做项目时遇到了一个问题。

我需要在C ++程序中调用Java程序, 它在linux中; 并且Java程序有一个包,所以我必须为它设置Classpath。

问题是,我不能像这样运行java程序:

java -classpath Server/main/java/ Sever

但我可以这样做:

export CLASSPATH=$CLASSPATH:Server/main/java

java Sever

然而,奇怪的是,如果我尝试在其他目录中调用java程序,即使导出CLASSPATH也行不通。 (我已经更改了CLASSPATH以使其与当前目录匹配)

我不知道为什么。 我必须在C程序中进行系统调用,因此导出Classpath将无法工作,(我不知道为什么)。

1 个答案:

答案 0 :(得分:0)

您正在设置进入CLASSPATH的相对路径,该路径的解释方式不同,具体取决于您启动程序的位置。请改用完全限定的路径。