私のプログラムはうまくコンパイルされました。しかし、問題は私がそれを実行しようとすると始まります。私に与えるインターフェイスjava.lang.NoClassDefFoundError
[email protected]:~/dev/drools/sudoku$ java App
Exception in thread "main" java.lang.NoClassDefFoundError: org/drools/planner/core/solution/Solution
Caused by: java.lang.ClassNotFoundException: org.drools.planner.core.solution.Solution
at java.net.URLClassLoader$1.run(URLClassLoader.java:217)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:205)
at java.lang.ClassLoader.loadClass(ClassLoader.java:321)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:294)
at java.lang.ClassLoader.loadClass(ClassLoader.java:266)
Could not find the main class: App. Program will exit.
私は、インターフェイスSolution
がコンパイル時に正しく解決されたことを知っています。 Sudoku
クラス
のインスタンスを使用することになっているApp
クラスは、それが私の結果です
package domain;
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.List;
import org.drools.planner.api.domain.solution.PlanningEntityCollectionProperty;
import org.drools.planner.core.solution.Solution;
import org.drools.planner.core.score.SimpleScore;
public class Sudoku implements Solution<SimpleScore>{
...
そしてここに:ここで
はimplements Solution
という問題のクラスSudoku
ですSudoku
とSolution
の間に間違ったキャストがありますか?
私のクラスパスは、次のように設定されている:あなたは、クラスorg.drools.planner.core.solution.Solution
の外部Jarファイルを追加する必要が
declare -x CLASSPATH=".:/home/jesvin/dev/drools/sudoku/binaries"
右上にあります。私は、 'declare -x CLASSPATH =":/ home/jesvin/dev/drools/sudoku/binaries/* "'のようにすべてのjarをインポートする 'dir/*'機能を使用しました。コンパイラのクラスパスはカスタムコマンドにハードコードされていて、環境変数を間違って残してしまいました。 – aitchnyu
あなたもケラテイトですか? – aitchnyu