maven noob、しばらくお待ちください...cdh3u1からapachehadoop0.20.203.0およびpig0.9.0にアップグレードしています。私はかつて持っていた:
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>0.20.2-cdh3u1</version>
</dependency>
<dependency>
<groupId>org.apache.pig</groupId>
<artifactId>pig</artifactId>
<version>0.8.1-cdh3u1</version>
</dependency>
そして、それらをEclipseの内部から実行し、junit実行構成を使用するとうまく機能しました。今私が持っています:
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-core</artifactId>
<version>0.20.203.0</version>
</dependency>
<dependency>
<groupId>org.apache.pig</groupId>
<artifactId>pig</artifactId>
<version>0.9.0</version>
</dependency>
実行時にNoClassDefFoundError:jline/ConsoleReaderInputStreamを取得しました。動作するまで、これらすべての依存関係を手動で追加することで終了しました。
<dependency>
<groupId>jline</groupId>
<artifactId>jline</artifactId>
<version>0.9.94</version>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr-runtime</artifactId>
<version> 3.2 </version> <- this is 3.0.1 in cdh3u1, but probably changed in pig 0.9.0
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>r06</version>
</dependency>
何が得られますか?Mavenが依存関係を自動的にプルしてクラスパスに配置しないのはなぜですか?