I also routinely build all branches of hbase on an apple M3, using hadoop3,
and Java 11+. I believe I’ve also built with java8 at some point, but don’t
quote me on that because we largely don’t use java8 at my company.


On Tue, Apr 30, 2024 at 4:48 PM Wei-Chiu Chuang <weic...@apache.org> wrote:

> I am on Apple M3, checked out HBase master branch,
> my JDK is Zulu 1.8.0_392 and Maven 3.9.6.
>
> I am able to build without modifying HBase code.
>
> On Tue, Apr 30, 2024 at 1:39 PM Mihir Monani <monani.mi...@gmail.com>
> wrote:
>
> > Also I tried the build with OpenJDK 8 aarchx64 JDK version and x64 JDK
> > version, and it fails for both of them.
> >
> > If I explicitly add dependency for hbase-common/pom.xml, then it passes
> for
> > hbase-common.
> >
> > *diff --git a/hbase-common/pom.xml b/hbase-common/pom.xml*
> >
> > *index 0723298926..348c3a4bd4 100644*
> >
> > *--- a/hbase-common/pom.xml*
> >
> > *+++ b/hbase-common/pom.xml*
> >
> > @@ -93,6 +93,10 @@
> >
> >        <groupId>io.opentelemetry</groupId>
> >
> >        <artifactId>opentelemetry-api</artifactId>
> >
> >      </dependency>
> >
> > +    <dependency>
> >
> > +      <groupId>io.opentelemetry</groupId>
> >
> > +      <artifactId>opentelemetry-context</artifactId>
> >
> > +    </dependency>
> >
> >      <dependency>
> >
> >        <groupId>io.opentelemetry</groupId>
> >
> >        <artifactId>opentelemetry-semconv</artifactId>
> >
> > It still fails for hbase-server package with below error
> >
> > [*INFO*] Apache HBase - Server ..............................
> > *FAILURE* [  0.455
> > s]
> >
> > [*INFO*]
> >
> *------------------------------------------------------------------------*
> >
> > [*INFO*] *BUILD FAILURE*
> >
> > [*INFO*]
> >
> *------------------------------------------------------------------------*
> >
> > [*INFO*] Total time:  01:32 min
> >
> > [*INFO*] Finished at: 2024-04-30T13:31:54-07:00
> >
> > [*INFO*]
> >
> *------------------------------------------------------------------------*
> >
> > [*ERROR*] Failed to execute goal
> > org.apache.maven.plugins:maven-antrun-plugin:3.1.0:run *(generate)* on
> > project hbase-server: *An Ant BuildException has occured:
> > java.lang.NoClassDefFoundError: javax/el/ELException*
> >
> > [*ERROR*] *around Ant part ...<jspcompiler
> uriroot="${src.webapps}/master"
> > outputdir="${generated.sources}/java"
> > package="org.apache.hadoop.hbase.generated.master"
> > webxml="${build.webapps}/master/WEB-INF/web.xml" />... @ 17:190 in
> >
> >
> /Users/mmonani/git/sfdc/bigdata-packaging/hbase/hbase-server/target/antrun/build-main.xml*:
> > javax.el.ELException
> >
> > [*ERROR*] -> *[Help 1]*
> >
> >
> >
> > Does anyone have any issues with Apple Silicon MacBook M1/M3 ?
> >
> > On Tue, Apr 30, 2024 at 11:30 AM Mihir Monani <monani.mi...@gmail.com>
> > wrote:
> >
> > > If I add *io.opentelemetry:opentelemetry-context* as dependency in
> > > hbase-common/pom.xml, it works fine.
> > >
> > > I am more confused on why this works with Intel MacBook but doesn't
> work
> > > with M1/M3 MacBook.
> > >
> > > On Tue, Apr 30, 2024 at 11:28 AM Mihir Monani <monani.mi...@gmail.com>
> > > wrote:
> > >
> > >> Hi
> > >>
> > >> I am trying to build hbase (mvn clean install -DskipTests) and it
> fails
> > >> with the below error in hbase-common package.  (Maven version : 3.8.8,
> > Java
> > >> Version : JDK openjdk version "1.8.0_401")
> > >>
> > >> [*ERROR*] Failed to execute goal
> > >> org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile
> > >> *(default-compile)* on project hbase-common: *Compilation failure*:
> > >> Compilation failure:
> > >>
> > >> [*ERROR*]
> > >>
> >
> /Users/mmonani/git/apache/hbase/hbase-common/src/main/java/org/apache/hadoop/hbase/trace/TraceUtil.java:[25,32]
> > >> package io.opentelemetry.context does not exist
> > >>
> > >> [*ERROR*]
> > >>
> >
> /Users/mmonani/git/apache/hbase/hbase-common/src/main/java/org/apache/hadoop/hbase/trace/TraceUtil.java:[26,32]
> > >> package io.opentelemetry.context does not exist
> > >>
> > >> [*ERROR*]
> > >>
> >
> /Users/mmonani/git/apache/hbase/hbase-common/src/main/java/org/apache/hadoop/hbase/trace/TraceUtil.java:[67,52]
> > >> cannot find symbol
> > >>
> > >> [*ERROR*]   symbol:   class Context
> > >>
> > >> [*ERROR*]   location: class org.apache.hadoop.hbase.trace.TraceUtil
> > >>
> > >> [*ERROR*]
> > >>
> >
> /Users/mmonani/git/apache/hbase/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/trace/HFileContextAttributesBuilderConsumer.java:[29,32]
> > >> package io.opentelemetry.context does not exist
> > >>
> > >> [*ERROR*]
> > >>
> >
> /Users/mmonani/git/apache/hbase/hbase-common/src/main/java/org/apache/hadoop/hbase/io/hfile/trace/HFileContextAttributesBuilderConsumer.java:[56,23]
> > >> cannot find symbol
> > >>
> > >> [*ERROR*]   symbol:   class ContextKey
> > >>
> > >> [*ERROR*]   location: class
> > >> org.apache.hadoop.hbase.io
> > .hfile.trace.HFileContextAttributesBuilderConsumer
> > >>
> > >> [*ERROR*]
> > >>
> >
> /Users/mmonani/git/apache/hbase/hbase-common/src/main/java/org/apache/hadoop/hbase/io/util/BlockIOUtils.java:[421,55]
> > >> cannot find symbol
> > >>
> > >> When I checked dependency tree difference for hbase-common package,
> > Apple
> > >> Silicon Mac doesn't download io.opentelemetry:opentelemetry-context
> > while
> > >> Intel Mac downloads it as sub dependency
> > >> of io.opentelemetry:opentelemetry-api
> > >>
> > >> Any suggestions on how to fix this?
> > >>
> > >> Mihir
> > >>
> > >
> > >
> > > --
> > > Mihir Monani
> > > (+1)-415-309-6297
> > >
> >
> >
> > --
> > Mihir Monani
> > (+1)-415-309-6297
> >
>

Reply via email to