0

Ubuntuを使用する

これが私のコードです:

import java.io.*;
import java.net.*;
import se.opendataexchange.ethernetip4j.clx.*;

class PLCServer
{
    public static void main(String argv[]) throws IOException
    {
        // IP address of the ethernet card
        String ENBTIP = "192.168.10.14";
        DataInputStream socketReader = null;
        PrintStream socketWriter = null;
        ControlLogixConnector test = new ControlLogixConnector(ENBTIP,44818);

        // Debugging code
        System.out.println(InetAddress.getByName(ENBTIP).isReachable(10000));
    }
}

これが私がコンパイルしている方法です:

javac -classpath /home/nick/Java/PLC/ethernetip4j-0.2.jar PLCServer.javaエラーを返さない

出力は次のとおりです。

Exception in thread "main" java.lang.NoClassDefFoundError: se/opendataexchange/ethernetip4j/clx/ControlLogixConnector
    at PLCServer.main(PLCServer.java:13)
Caused by: java.lang.ClassNotFoundException: se.opendataexchange.ethernetip4j.clx.ControlLogixConnector
    at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
    at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
    at java.security.AccessController.doPrivileged(Native Method)
    at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:423)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
    ... 1 more

ここで何かが足りませんか?

4

1 に答える 1

3

コードを実行するときは、クラスパスも指定していることを確認してください。Javaクラスパスに必要なものをすべて追加しても問題が解決しない場合は、不足しているクラスが実際に指定しているjar/場所にあることを確認してください。また、いくつかのデバッグフラグを有効にして、クラスの読み込みなどに関する詳細情報を提供することもできます。

たとえば...

java -classpath /home/nick/Java/PLC/ethernetip4j-0.2.jar:. PLCServer
于 2013-01-07T15:30:45.473 に答える