私はRMIを実装するためにいくつかのJavaクラスを書いています。私はすべてのクラスを書き、プログラムはうまくいきました。シンボルを見つけることができません:Javaコードをコンパイルするとき
ファイル名:ServerInterface.java
import java.rmi.*;
public interface ServerInterface extends Remote
{
public double sum(double[] temp) throws RemoteException;
};
ファイル名:ServerImplement.java
import java.rmi.*;
import java.rmi.server.*;
public class ServerImplement extends UnicastRemoteObject implements ServerInterface
{
public ServerImplement() throws RemoteException
{
}
public double sum(double[] temp) throws RemoteException
{
double sum=0;
int len=temp.length;
for(int i=0;i<len;i++)
sum+=temp[i];
return sum;
}
};
しかし、私はコンパイラエラーを取得しています非常に次の日からのファイルの存在しないことを示します
ファイル名エラーではないことを証明する:
F:\E\java\rmi final>dir
Volume in drive F is My Volume
Volume Serial Number is E0F9-4F89
Directory of F:\E\java\rmi final
22-01-2011 23:23 <DIR> .
22-01-2011 23:23 <DIR> ..
22-12-2009 13:09 1,849 additionImplementer_Stub.class
21-01-2011 21:52 1,076 Client.class
18-01-2011 02:54 649 Client.java
21-01-2011 21:52 1,847 ClientTry.class
18-01-2011 02:54 1,268 ClientTry.java
21-01-2011 21:52 444 ServerImplement.class
18-01-2011 02:30 386 ServerImplement.java
18-01-2011 02:54 1,783 ServerImplement_Stub.class
21-01-2011 21:54 209 ServerInterface.class
22-12-2009 12:07 132 ServerInterface.java
21-01-2011 21:52 919 ServerMain.class
18-01-2011 02:36 409 ServerMain.java
12 File(s) 10,971 bytes
私がしようとした場合:javac *.java
を、それが正常に動作します(ただし、.classファイルのいずれかの上でJavaをしようとするとエラーにつながる:Exception in thread "main" java.lang.NoClassDefFoundError: ServerMain
私はjavac ServerImplement.java
をしようとした場合、私は私のJavaプログラムの事実なしである(エラーが出ます)にリンクすることができ: (私は同じディレクトリにしています)
E:\ Javaの\のRMI最終>のjavac ServerMain.java
ServerImplement.java:4:シンボル
symbol: class ServerInterface
を見つけることができませんpublic class ServerImplement extends UnicastRemoteObject implements ServerInterface
^
1 error
プログラムも、私の大学の研究室で正常に動作しています。 JDKを再インストールする必要がありますか?あるいは明示的にリンクを提供する方法はありますか?
クリーンで再構築してください。 – BoltClock
コマンドプロンプトでそれを行うにはどうすればいいですか? – letsc