2014-12-17 4 views
2

Apache Solr 종속성을 Jar와 번들로 묶어두기 위해이 빌드 구성을 내 maven pom에 추가했습니다. 지금은 그 예외지만 (POM 조각 후) 다음과 같이 새S3FileSystem FileSystem 구현에 의해 구현되지 않음 Hadoop Jar

<build> 
     <plugins> 
      <plugin> 
       <artifactId>maven-assembly-plugin</artifactId> 
       <configuration> 
        <archive> 
         <manifest> 
          <mainClass></mainClass> 
         </manifest> 
        </archive> 
        <descriptorRefs> 
         <descriptorRef>jar-with-dependencies</descriptorRef> 
        </descriptorRefs> 
       </configuration> 
       <executions> 
        <execution> 
         <id>make-assembly</id> <!-- this is used for inheritance merges --> 
         <phase>package</phase> <!-- bind to the packaging phase --> 
         <goals> 
          <goal>single</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
     </plugins> 
    </build> 

을 받고 있지 않다,면 ClassNotFound을 그리고이 두 개의 항아리 파일 종속 관계 하나 하나 개의 간단한 항아리를 만듭니다 다른 현명한 내가 SolarServerException을 얻고 있었다. Deps와 항아리,

Exception in thread "main" java.lang.UnsupportedOperationException: Not implemented by the S3FileSystem FileSystem implementation 
    at org.apache.hadoop.fs.FileSystem.getScheme(FileSystem.java:216) 
    at org.apache.hadoop.fs.FileSystem.loadFileSystems(FileSystem.java:2564) 
    at org.apache.hadoop.fs.FileSystem.getFileSystemClass(FileSystem.java:2574) 
    at org.apache.hadoop.fs.FileSystem.createFileSystem(FileSystem.java:2591) 
    at org.apache.hadoop.fs.FileSystem.access$200(FileSystem.java:91) 
    at org.apache.hadoop.fs.FileSystem$Cache.getInternal(FileSystem.java:2630) 
    at org.apache.hadoop.fs.FileSystem$Cache.get(FileSystem.java:2612) 
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:370) 
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:169) 
    at org.apache.hadoop.fs.FileSystem.get(FileSystem.java:354) 
    at org.apache.hadoop.fs.Path.getFileSystem(Path.java:296) 
    at org.apache.hadoop.mapreduce.lib.input.FileInputFormat.addInputPath(FileInputFormat.java:518) 
    at com.myproj.core.NewWordCount.main(NewWordCount.java:59) 
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) 
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57) 
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) 
    at java.lang.reflect.Method.invoke(Method.java:606) 
    at org.apache.hadoop.util.RunJar.run(RunJar.java:221) 
    at org.apache.hadoop.util.RunJar.main(RunJar.java:136) 

지금 바로이 s3FileSystem 구현을 찾습니다 하둡 것으로, 뭘 잘못했는지 제발 도와주세요,이 오류가 발생합니다.

이 명령으로 실행하십시오.

하둡 항아리 com.myproj-0.0.1-SNAPSHOT 항아리 -와 - dependencies.jar com.myproj.core.NewWordCount tempdata/FILE01 output10/

P.S. 단순한 Jar로 완벽하게 작동 함 (의존성 없음)

답변

1

hadoop-hdfs가 있기 때문에 (심지어 직접적이지 않더라도) 아마도 hadoop-core 종속성을 제거해야합니다.