You are viewing a plain text version of this content. The canonical link for it is here.
Posted to common-issues@hadoop.apache.org by "Trevor Robinson (JIRA)" <ji...@apache.org> on 2012/06/26 23:40:43 UTC

[jira] [Commented] (HADOOP-8370) Native build failure: javah: class file for org.apache.hadoop.classification.InterfaceAudience not found

    [ https://issues.apache.org/jira/browse/HADOOP-8370?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13401705#comment-13401705 ] 

Trevor Robinson commented on HADOOP-8370:
-----------------------------------------

I'm not sure where to check for that. Does the classpath just contain all of the jars in the appropriate directory under share/hadoop?

With this patch, jdiff-*.jar shows up in the same place as the official CDH4 build, only under share/hadoop/mapreduce/lib:

$ find hadoop-dist/target/hadoop-2.0.0-cdh4.0.0 -name '*jdiff*.jar'
hadoop-dist/target/hadoop-2.0.0-cdh4.0.0/share/hadoop/mapreduce/lib/jdiff-1.0.9.jar

                
> Native build failure: javah: class file for org.apache.hadoop.classification.InterfaceAudience not found
> --------------------------------------------------------------------------------------------------------
>
>                 Key: HADOOP-8370
>                 URL: https://issues.apache.org/jira/browse/HADOOP-8370
>             Project: Hadoop Common
>          Issue Type: Bug
>          Components: native
>    Affects Versions: 0.23.1
>         Environment: Apache Maven 3.0.4 (r1232337; 2012-01-17 02:44:56-0600)
> Maven home: /usr/local/apache-maven-3.0.4
> Java version: 1.7.0_04, vendor: Oracle Corporation
> Java home: /usr/lib/jvm/jdk1.7.0_04/jre
> Default locale: en_US, platform encoding: ISO-8859-1
> OS name: "linux", version: "3.2.0-24-generic", arch: "amd64", family: "unix"
>            Reporter: Trevor Robinson
>            Assignee: Trevor Robinson
>         Attachments: HADOOP-8370.patch
>
>
> [INFO] --- native-maven-plugin:1.0-alpha-7:javah (default) @ hadoop-common ---
> [INFO] /bin/sh -c cd /build/hadoop-common/hadoop-common-project/hadoop-common && /usr/lib/jvm/jdk1.7.0_02/bin/javah -d /build/hadoop-common/hadoop-common-project/hadoop-common/target/native/javah -classpath <...> org.apache.hadoop.io.compress.zlib.ZlibDecompressor org.apache.hadoop.security.JniBasedUnixGroupsMapping org.apache.hadoop.io.nativeio.NativeIO org.apache.hadoop.security.JniBasedUnixGroupsNetgroupMapping org.apache.hadoop.io.compress.snappy.SnappyCompressor org.apache.hadoop.io.compress.snappy.SnappyDecompressor org.apache.hadoop.io.compress.lz4.Lz4Compressor org.apache.hadoop.io.compress.lz4.Lz4Decompressor org.apache.hadoop.util.NativeCrc32
> Cannot find annotation method 'value()' in type 'org.apache.hadoop.classification.InterfaceAudience.LimitedPrivate': class file for org.apache.hadoop.classification.InterfaceAudience not found
> Cannot find annotation method 'value()' in type 'org.apache.hadoop.classification.InterfaceAudience.LimitedPrivate'
> Error: cannot access org.apache.hadoop.classification.InterfaceStability
>   class file for org.apache.hadoop.classification.InterfaceStability not found
> The fix for me was to changing the scope of hadoop-annotations from
> "provided" to "compile" in pom.xml:
>    <dependency>
>      <groupId>org.apache.hadoop</groupId>
>      <artifactId>hadoop-annotations</artifactId>
>      <scope>compile</scope>
>    </dependency>
> For some reason, it was the only dependency with scope "provided".

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira