1

Fitnesse で Java アプリのテストを開始したかったのですが、最初は大きな問題がありました。

私の非常に単純なクラスをテストするための私のフィットネスページは次のとおりです。

!contents -R2 -g -p -f -h
!define TEST_SYSTEM {slim}
!path /home/user/NetBeansProjects/dotestow/build/classes/dotestow/


!|dodawanie|
|l1|l2|add?|
|10|2|12|
|10|35|45|
|60|4|33| 

私のクラスは、NetBeans によって作成された通常の Java クラスです。コードは次のとおりです。

package dotestow;

public class Dotestow {

    private int l1, l2;

    public void setL1(int l1) {this.l1 = l1;}
    public void setL2(int l2) {this.l2 = l2;}

    public int add()
    {
      return l1+l2;
    }
}

テストをクリックすると、次のように表示されます。

 Exception in thread "main" java.lang.NoClassDefFoundError: fitnesse/slim/SlimService
Caused by: java.lang.ClassNotFoundException: fitnesse.slim.SlimService
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: fitnesse.slim.SlimService. Program will exit.

私は何を間違っていますか??

@@編集

私が走るとき

java Dotestow

/Dotestow/build/classes ディレクトリで、次の出力を得ました。

Exception in thread "main" java.lang.NoClassDefFoundError: Dotestow (wrong name:      dotestow/Dotestow)
at java.lang.ClassLoader.defineClass1(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:634)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
at java.net.URLClassLoader.defineClass(URLClassLoader.java:277)
at java.net.URLClassLoader.access$000(URLClassLoader.java:73)
at java.net.URLClassLoader$1.run(URLClassLoader.java:212)
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: Dotestow. Program will exit.
4

3 に答える 3

1

回答が更新されました

FitNesse.jarがクラスパスにないか、JRE が FitNesse jar バージョンと一致していないようです。Fitnesse.jarが netbeans のクラスパスに追加されているかどうかを確認してください。

よろしく、

于 2013-04-14T23:09:47.650 に答える
0

fitnesse.jarを使用してクラスパスに明示的に追加し!path、.jar への完全な絶対パスを指定します。

于 2013-06-29T21:51:46.540 に答える