【发布时间】:2020-11-11 12:57:28
【问题描述】:
我正在尝试使用 Maven 构建 Geonetwork。 源代码来自这里:https://github.com/geonetwork/core-geonetwork/tree/3.10.x
我按照本教程构建 Geonetwork:https://geonetwork-opensource.org/manuals/trunk/eng/users/tutorials/introduction/deployment/build.html
但是当我构建它时,出现了这些错误:
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project common: Compilation failure: Compilation failure:
[ERROR] /C:/Users/mn/Downloads/core_geonetwork/core-geonetwork-3.10.x/common/src/main/java/org/fao/geonet/utils/GeonetHttpRequestFactory.java:[59,24] cannot find symbol
[ERROR] symbol: class PreDestroy
[ERROR] location: package javax.annotation
[ERROR] /C:/Users/mn/Downloads/core_geonetwork/core-geonetwork-3.10.x/common/src/main/java/org/fao/geonet/utils/Xml.java:[70,22] package javax.xml.bind does not exist
[ERROR] /C:/Users/mn/Downloads/core_geonetwork/core-geonetwork-3.10.x/common/src/main/java/org/fao/geonet/utils/Xml.java:[71,22] package javax.xml.bind does not exist
[ERROR] /C:/Users/mn/Downloads/core_geonetwork/core-geonetwork-3.10.x/common/src/main/java/org/fao/geonet/utils/GeonetHttpRequestFactory.java:[72,6] cannot find symbol
[ERROR] symbol: class PreDestroy
[ERROR] location: class org.fao.geonet.utils.GeonetHttpRequestFactory
[ERROR] /C:/Users/mn/Downloads/core_geonetwork/core-geonetwork-3.10.x/common/src/main/java/org/fao/geonet/utils/Xml.java:[376,9] cannot find symbol
[ERROR] symbol: class JAXBContext
[ERROR] location: class org.fao.geonet.utils.Xml
[ERROR] /C:/Users/mn/Downloads/core_geonetwork/core-geonetwork-3.10.x/common/src/main/java/org/fao/geonet/utils/Xml.java:[376,35] cannot find symbol
[ERROR] symbol: variable JAXBContext
[ERROR] location: class org.fao.geonet.utils.Xml
[ERROR] /C:/Users/mn/Downloads/core_geonetwork/core-geonetwork-3.10.x/common/src/main/java/org/fao/geonet/utils/Xml.java:[377,9] cannot find symbol
[ERROR] symbol: class Unmarshaller
[ERROR] location: class org.fao.geonet.utils.Xml
[ERROR] -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/MojoFailureException
[ERROR]
[ERROR] After correcting the problems, you can resume the build with the command
[ERROR] mvn <args> -rf :common
所以 javax.annotation 包似乎有些东西。我在这里尝试了这个提示:https://stackoverflow.com/a/63268748/5621619 但它没有帮助。我也尝试根据这个答案替换插件存储库:https://stackoverflow.com/a/53853896/5621619 但它没有帮助。
我的Java版本如下:
java version "15.0.1" 2020-10-20
Java(TM) SE Runtime Environment (build 15.0.1+9-18)
Java HotSpot(TM) 64-Bit Server VM (build 15.0.1+9-18, mixed mode, sharing)
我的Maven版本如下:
Java HotSpot(TM) 64-Bit Server VM warning: Ignoring option MaxPermSize; support was removed in 8.0
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: C:\opt\apache-maven-3.6.3\bin\..
Java version: 15.0.1, vendor: Oracle Corporation, runtime: C:\Program Files\Java\jdk-15.0.1
Default locale: de_CH, platform encoding: Cp1252
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"
我怎样才能让这个构建过程运行?
【问题讨论】: