Rumah  >  Soal Jawab  >  teks badan

shell - 用命令行对javac进行编译,总是『cannot find symbol』,但是eclipse执行不会出现问题

代码如下
分别是enum和testclass两个java文件

package cs121assignment1;

public enum Food {
    APPLE("fruit", 55),
    BANANA("fruit", 80),
    CARROT("vegetable", 60);
    
    private final String catagory; //vegetable or fruit
    private final int calorie;
    
    Food(String catagory, int calorie){
        this.catagory = catagory;
        this.calorie = calorie;
    }
    
    public int getCalorie(){
        return calorie;
    }
    
    public String getCatagory(){
        return catagory;
    }
}
package cs121assignment1;

public class TestFood {

public static void main(String[] args){
    System.out.println("All foods:");
    
    for(Food food : Food.values()){
        System.out.printf("%s, catagory: %s, calorie: %d kilocalorie each\n", food, food.getCatagory(), food.getCalorie());
    }
        
}

eclipse中运行结果如下:

但是用命令行执行javac的时候显示如下:

阿神阿神2711 hari yang lalu577

membalas semua(2)saya akan balas

  • PHPz

    PHPz2017-04-18 10:50:47

    cd Desktop;
    javac cs121assignment1.TestFood;

    不要
    cd Desktop/cs121tugasan1;

    balas
    0
  • 怪我咯

    怪我咯2017-04-18 10:50:47

    Padam semua pernyataan pakej dalam baris pertama kod
    cd ke folder yang mengandungi fail .java
    Laksanakanjavac *.java
    untuk mendapatkan dua fail .class
    java TestFood
    Ia akan berjalan dengan jayanya

    Masalah ini sebenarnya adalah masalah dengan penggunaan pakej
    Kaedah lain bukan untuk mengalih keluar pakej dalam baris pertama fail
    javac -d ~/Desktop/cs121assignment1 Food.java TestFood.java
    akan menjana folder baharu bernama cs121assignment1 mengandungi Food.class 和 TestFood.class
    Gunakan cs121assignment1 dalam direktori atas java cs121assignment1.TestFood yang baru dijana untuk berjalan dengan jayanya

    balas
    0
  • Batalbalas