我正在遵循一個Java教程(留給自己的設備來編寫測試代碼),但是當試圖編譯時,我得到了一個找不到符號的錯誤。我看了看,但看不出爲什麼我寫的代碼產生了這個錯誤。這可能很簡單,但我會很感激有人指出原因,因爲我正在拉我的頭髮,試圖理解我做錯了什麼!Java在編譯時找不到符號
TestBeerExpert.java:
package com.example.model;
import com.example.model.*;
import java.util.*;
public class TestBeerExpert {
public static void main(String[] args) {
TestBeerExpert test = new TestBeerExpert();
test.go();
}
private void go() {
BeerExpert expert = new BeerExpert();
List<String> brands = expert.getBrands("amber");
...
}
}
BeerExpert.java:
package com.example.model;
import java.util.*;
public class BeerExpert {
public List<String> getBrands(String color) {
List<String> brands = new ArrayList<String>();
...
return(brands);
}
}
目錄結構:
beerV1 -> src -> com -> example -> model -> TestBeerExpert.java & BeerExpert.java
從beerV1
編譯與javac -d classes src/com/example/model/TestBeerExpert.java
與實際誤差:
src/com/example/model/TestBeerExpert.java:14: error: cannot find symbol
BeerExpert expert = new BeerExpert();
^
symbol: class BeerExpert
location: class TestBeerExpert
src/com/example/model/TestBeerExpert.java:14: error: cannot find symbol
BeerExpert expert = new BeerExpert();
^
symbol: class BeerExpert
location: class TestBeerExpert
2 errors
對我的生活中,我能不知道是什麼,我做錯了。這些文件位於相同的目錄和包中,所以據我所知這應該是編譯。我很感激現在只能修改代碼,並解釋我做錯了什麼,這樣我才能記住它的未來。提前致謝。
您是否先編譯過BeerExpert? – 2013-02-08 19:55:54