我想从here编译OSX上的pentaho示例。带有'extends'的Java编译.java失败
Sample1.java extends AbstractReportGenerator.java。
我已出口到CLASSPATH在控制台中包括PWD:
export CLASSPATH=/Users/xxx/java-dev/pentaho/:/Users/xxx/java-dev/pentaho/lib/
我编AbstractReportGenerator.java
成功地利用javac
,到同一个文件夹中Sample1.java
文件,但是当我尝试始终编译Sample1.java
它由于与AbstractReportGenerator
相关的3个错误而失败。
对原因和解决方案的任何建议?
文件夹结构:
Working Folder >
- Sample1.java
- AbstractReportGenerator.java
- AbstractReportGenerator.class
- AbstractReportGenerator$1.class
- AbstractReportGenerator$OutputType.class
- lib
- pentaho .jar files
命令:
javac -cp "lib/*" Sample1.java
Sample1.java:41: error: cannot find symbol
public class Sample1 extends AbstractReportGenerator
^
symbol: class AbstractReportGenerator
Sample1.java:61: error: cannot find symbol
final ClassLoader classloader = this.getClass().getClassLoader();
^
symbol: method getClass()
Sample1.java:132: error: package AbstractReportGenerator does not exist
new Sample1().generateReport(AbstractReportGenerator.OutputType.PDF, outputFilename);
^
Note: Sample1.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
3 errors
是你的类路径中的'AbstractReportGenerator'(编译后)? –
在Windows或Linux上? – immibis
O/S是MAC,类路径是当前工作文件夹,编译类(AbstractReportGenerator.class,AbstractReportGenerator $ 1.class,AbstractReportGenerator $ OutputType.class)与Sample1.java位于同一文件夹中 – crankshaft