java - 从命令行编译 Java '找不到符号'
问题描述
我正在编写一个可以存储任何对象的缓存系统。我有这两个类:
public class Cache<T> { ... }
public class CacheDriver<T> { private Cache<T> cache1, cache2; }
我还有一个包含我的主要方法和测试代码的测试类。
public class Test { CacheDriver<String> c; }
当我尝试从命令行编译时
javac Test.java
我明白了:
Test.java:8: error: cannot find symbol
private CacheDriver<String> c;
^
symbol: class CacheDriver
location: class Test
当我实例化 CacheDriver 对象时,我也有同样的错误:
c = new CacheDriver(Integer.parseInt(args[0]), Integer.parseInt(args[1]));
我做了一些研究,认为这可能与我的通用 T 和两个类不共享同一个类有关,但我不知道如何解决这个问题。我该怎么做?
编辑:我他们在一个包裹里面。我将它们从包中直接移到 src 文件夹中,并且它起作用了。不完全确定为什么,但我会接受。
解决方案
推荐阅读
- python - 如何让 Thonny 在 Windows 上使用 Python3.9.5
- javascript - ReactJS-Plotly 图表未完全填充容器
- reactjs - 材质ui中TextField表单中的白色
- amazon-web-services - AWS NetCDF 文件(noaa-16 存储桶)的时间转换
- java - Java - 尝试从被覆盖的调用方法中调用作为父类私有方法副本的子类方法
- angular - 我想在我的角度自定义元素中使用 ngmodel 和 ngforms
- c# - 使用 .NET 核心检测并重新启动崩溃的 Windows 应用程序
- arrays - 将 UserDefaults 移动到数组
- javascript - Uppy 刷新图像列表
- python - 如何在一个循环内同时创建多个循环?