Я работаю над созданием файла модуля info.java для модуля Hbase-client в проекте Apache Hbase. Теперь Hbase-Client имеет прямую входящую зависимость от модуля Hbase-Common. /> Я прошел какой -то обходной путь, но это так, когда у нас есть две входящие зависимости, которые содержат один и тот же пакет. В этом случае мы можем создать отдельную модульную JAR, но это не может быть полезно для HBASE, потому что это приведет к одному модульной банке для hBase, а это бросает вызов мотиву этого проекта.
module org.apache.hadoop.hbase.client {
requires audience.annotations;
requires commons.crypto;
requires org.apache.commons.io;
requires org.apache.commons.lang3;
requires hadoop.common;
requires hbase.common;
requires com.google.gson;
requires com.google.common;
requires hbase.unsafe;
requires java.management;
requires java.security.sasl;
requires jcip.annotations;
requires org.jruby.jcodings;
requires org.jruby.joni;
requires metrics.core;
requires io.opentelemetry.api;
requires io.opentelemetry.context;
requires org.slf4j;
requires zookeeper;
requires hbase.shaded.protobuf;
// requires hbase.protocol.shaded;
// requires hbase.shaded.netty;
// requires zookeeper.jute;
exports org.apache.hadoop.hbase;
}
< /code>
Я получаю эту ошибку, собирая ее < /p>
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project hbase-client: Compilation failure: Compilation failure:
[ERROR] the unnamed module reads package org.apache.hadoop.hbase from both hbase.common and org.apache.hadoop.hbase.client
[ERROR] the unnamed module reads package org.apache.hadoop.hbase.exceptions from both hbase.common and org.apache.hadoop.hbase.client
[ERROR] the unnamed module reads package org.apache.hadoop.hbase.filter from both hbase.common and org.apache.hadoop.hbase.client
[ERROR] the unnamed module reads package org.apache.hadoop.hbase.security from both hbase.common and org.apache.hadoop.hbase.client
[ERROR] the unnamed module reads package org.apache.hadoop.hbase.util from both hbase.common and org.apache.hadoop.hbase.client
[ERROR] the unnamed module reads package org.apache.hadoop.hbase.zookeeper from both hbase.common and org.apache.hadoop.hbase.client
[ERROR] module org.slf4j reads package org.apache.hadoop.hbase from both org.apache.hadoop.hbase.client and hbase.common
[ERROR] module org.slf4j reads package org.apache.hadoop.hbase.zookeeper from both org.apache.hadoop.hbase.client and hbase.common
[ERROR] module org.slf4j reads package org.apache.hadoop.hbase.util from both org.apache.hadoop.hbase.client and hbase.common
[ERROR] module org.slf4j reads package org.apache.hadoop.hbase.security from both org.apache.hadoop.hbase.client and hbase.common
[ERROR] module org.slf4j reads package org.apache.hadoop.hbase.filter from both org.apache.hadoop.hbase.client and hbase.common
[ERROR] module org.slf4j reads package org.apache.hadoop.hbase.exceptions from both org.apache.hadoop.hbase.client and hbase.common
....
....
....
Это как большой неназванный модуль (HBase) читает тот же пакет от hbase.client и hbase.common.
Я работаю над созданием файла модуля info.java для модуля Hbase-client в проекте Apache Hbase. Теперь Hbase-Client имеет прямую входящую зависимость от модуля Hbase-Common. /> Я прошел какой -то обходной путь, но это так, когда у нас есть две входящие зависимости, которые содержат один и тот же пакет. В этом случае мы можем создать отдельную модульную JAR, но это не может быть полезно для HBASE, потому что это приведет к одному модульной банке для hBase, а это бросает вызов мотиву этого проекта.[code]module org.apache.hadoop.hbase.client { requires audience.annotations; requires commons.crypto; requires org.apache.commons.io; requires org.apache.commons.lang3; requires hadoop.common; requires hbase.common; requires com.google.gson; requires com.google.common; requires hbase.unsafe; requires java.management; requires java.security.sasl; requires jcip.annotations; requires org.jruby.jcodings; requires org.jruby.joni; requires metrics.core; requires io.opentelemetry.api; requires io.opentelemetry.context; requires org.slf4j; requires zookeeper; requires hbase.shaded.protobuf; // requires hbase.protocol.shaded; // requires hbase.shaded.netty; // requires zookeeper.jute;
exports org.apache.hadoop.hbase; } < /code> Я получаю эту ошибку, собирая ее < /p> [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project hbase-client: Compilation failure: Compilation failure: [ERROR] the unnamed module reads package org.apache.hadoop.hbase from both hbase.common and org.apache.hadoop.hbase.client [ERROR] the unnamed module reads package org.apache.hadoop.hbase.exceptions from both hbase.common and org.apache.hadoop.hbase.client [ERROR] the unnamed module reads package org.apache.hadoop.hbase.filter from both hbase.common and org.apache.hadoop.hbase.client [ERROR] the unnamed module reads package org.apache.hadoop.hbase.security from both hbase.common and org.apache.hadoop.hbase.client [ERROR] the unnamed module reads package org.apache.hadoop.hbase.util from both hbase.common and org.apache.hadoop.hbase.client [ERROR] the unnamed module reads package org.apache.hadoop.hbase.zookeeper from both hbase.common and org.apache.hadoop.hbase.client [ERROR] module org.slf4j reads package org.apache.hadoop.hbase from both org.apache.hadoop.hbase.client and hbase.common [ERROR] module org.slf4j reads package org.apache.hadoop.hbase.zookeeper from both org.apache.hadoop.hbase.client and hbase.common [ERROR] module org.slf4j reads package org.apache.hadoop.hbase.util from both org.apache.hadoop.hbase.client and hbase.common [ERROR] module org.slf4j reads package org.apache.hadoop.hbase.security from both org.apache.hadoop.hbase.client and hbase.common [ERROR] module org.slf4j reads package org.apache.hadoop.hbase.filter from both org.apache.hadoop.hbase.client and hbase.common [ERROR] module org.slf4j reads package org.apache.hadoop.hbase.exceptions from both org.apache.hadoop.hbase.client and hbase.common .... .... .... [/code] Это как большой неназванный модуль (HBase) читает тот же пакет от hbase.client и hbase.common.