2017-04-26 1 views
0

申し訳ありませんが、これは悪い質問かもしれませんが、私は同じパッケージに属する2つのクラスを作った。私はjavac -d . [ClassName].javajavac -d .. [ClassName].javaの両方で両方のクラスをコンパイルできましたが、実行しようとするとError: could not find or load main class [ClassName]とは動作しません。それは場合に役立ちます端末にパッケージ化されたJavaファイルを実行するには?

はここで両方のクラスです:

1:

package elevenslab; 

public class Card{ 
    private String suit; 
    private String rank; 
    private int pointValue; 

    public Card(String cardSuit, String cardRank, int cardPointValue){ 
    suit=cardSuit; 
    rank=cardRank; 
    pointValue=cardPointValue; 
    } 

    public String getSuit(){ 
    return suit; 
    } 

    public String getRank(){ 
    return rank; 
    } 

    public int getPtVal(){ 
    return pointValue; 
    } 

    public boolean matches(Card otherCard){ 
    if(this.getSuit().equals(otherCard.getSuit())&&this.getRank().equals(otherCard.getRank())&&this.getPtVal()==otherCard.getPtVal()){ 
     return true; 
    } 
    return false; 
    } 
    public String toString(){ 
    return rank+" of "+suit+" (point value: "+pointValue+")"; 
    } 
} 

2:

package elevenslab; 

public class CardTester{ 
    public static void main(String[] args){ 
    Card a=new Card("Hearts", "Queen", 12); 
    Card b=new Card("Spades", "Ten", 10); 
    Card c=new Card("Diamonds", "Ace", 1); 
    System.out.println(a.toString()+"\n"+b.toString()+"\n"+c.toString()); 
    } 
} 

両方のクラスが同じフォルダとすべてのものです。

答えて

2

ディレクトリelevenslabの親フォルダに移動します。 elevenslabには、とCard.classという2つのクラスファイルが必要です。

java -cp . elevenslab.CardTester 

は、その後、次のコマンドを実行する必要があります

0

クラスにパッケージ名を含める必要があることに注意してください。また、クラスパスが環境変数などに設定されていない場合は、クラスパスを設定する必要があります。

java -cp .;.. elevenslab.CardTester

しかしあなたは、私はクラスの検索アルゴリズムは、これを処理するために起こっているかわからないんだけど、それは私があなたに不完全な答えを与えてくれたことが可能です「elevenslab」という名前のディレクトリを持っていない場合。

関連する問題