我正在关注 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");
...
}
}
啤酒专家.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
对于我的生活,我无法弄清楚我做错了什么。这些文件位于同一目录和包中,据我所知,这应该正在编译。我很感激现在只纠正了代码,但解释了我做错了什么,这样我以后才能记住它。提前致谢。