2012-02-07 47 views
0

我在做项目时遇到了问题。如何在Linux中使用C++代码调用java -classpath

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

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

java -classpath Server/main/java/ Sever 

但我可以这样做:

export CLASSPATH=$CLASSPATH:Server/main/java 

java Sever 

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

我不知道为什么。 我必须在C程序中进行系统调用,所以导出Classpath将不起作用,(我不知道为什么)。

+0

你的问题是什么? – 2012-02-07 02:45:46

回答

0

您正在为您的CLASSPATH设置一个相对路径,该路径的解释方式不同,具体取决于您从何处启动程序。改为使用完全限定路径。