我有一个名为" shapefile"其中包含IndexFileReader和IndexFile类。 IndexFileReader返回IndexFile类型的对象。
然后我有一个名为ReadFiles的类,它导入" shapefile"并使用IndexFileReader创建IndexFile。
import java.io.IOException;
import shapefile.*;
public class ReadFiles {
public static void main(String[] args) throws IOException{
IndexFile indexFile;
indexFile = IndexFileReader.readIndexFile("FilePath/FileName.shx");
}
}
我的文件位于文件夹中,如下所示:
我从这样的Windows命令行编译shapefile项目,它编译得很好:
cd JavaProjects
javac .\shapefile\*.java
我像这样编译我的项目,我收到一个错误:
cd MyProject
javac -cp .. ReadFiles.java
错误:
ReadFiles.java:8: error: incompatible types
indexFile = IndexFileReader.readIndexFile("FilePath/FileName.shx");
^
required: IndexFile
found: shapefile.IndexFile
这对我来说是新的,我相信我在运行javac时遇到了问题。我之前已经成功编译了ReadFiles,我想我是用我在这里打印的相同命令完成的。我实际上仍然有成功编译时的ReadFiles.class文件,它运行没有任何问题,这就是为什么我认为我没有正确使用javac。
我查看了其他不兼容的类型问题,但我找不到一个让我朝着正确方向前进的问题。