(可选)生成

GeoNetwork的源代码可以在 Github . 这意味着您可以克隆、分叉和建议推送您的自定义更改。如果您不熟悉代码库或git,应该检查 this quick manual .

使用 Maven version 3+ . 上面写着 爪哇7+ . 它既适用于OpenJDK,也适用于Oracle版本。有几种方法可以将其安装到本地计算机上;例如,如果您有一个基于Debian的操作系统(如Ubuntu),则可以使用以下命令安装它们:

$ sudo apt-get install maven git

确保安装了maven版本3!!

$ mvn --version
  Apache Maven 3.2.1 (ea8b2b07643dbb1b84b6d16e1f08391b666bc1e9; 2014-02-14T18:37:52+01:00)
  Maven home: ....

请记住,这也将在您的系统上安装Java。您可以使用以下命令检查版本是否正确:

$ java -version

因此,设置环境后的第一步是在本地计算机上克隆geonnetwork存储库。在将填充源代码的空文件夹中,可以使用以下命令在命令行上执行此操作:

$ cd yourEmptyFolder
$ git clone https://github.com/geonetwork/core-geonetwork.git
$ cd core-geonetwork
$ git submodule init
$ git submodule update

如您所见,github上显示的所有源代码现在也可以在您的本地计算机上使用。

geonnetwork的源代码在几个较小的Maven项目中被拆分。要运行geonnetwork,您必须构建它们并运行名为 “网络” .

如果您熟悉Maven,您可能会猜到您必须在geonnetwork源代码的根文件夹上运行一个package install命令。但是如果您尝试这样做,Maven会警告您,为了构建geonnetwork,您需要比提供给Maven的默认内存更多的内存。这意味着您必须导出Maven选项来增加内存,如下所示:

$ export MAVEN_OPTS="-Xmx512M -XX:MaxPermSize=256M"

此时我们对运行测试不感兴趣,因此可以使用参数跳过它们 -DskipTests

$ mvn package install -DskipTests

在构建结束时(这可能需要很长时间,具体取决于您的网络连接,因为它有许多第三方库),您将看到如下内容:

[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO]
[INFO] GeoNetwork opensource ............................. SUCCESS [ 3.111 s]
[INFO] common utils ...................................... SUCCESS [ 13.678 s]
[INFO] Caching xslt module ............................... SUCCESS [ 7.607 s]
[INFO] ArcSDE module (dummy-api) ......................... SUCCESS [ 7.860 s]
[INFO] GeoNetwork domain ................................. SUCCESS [ 33.785 s]
[INFO] Oaipmh modules .................................... SUCCESS [ 0.833 s]
[INFO] GeoNetwork Events ................................. SUCCESS [ 0.654 s]
[INFO] GeoNetwork schema plugins ......................... SUCCESS [ 4.646 s]
[INFO] GeoNetwork schema plugins core .................... SUCCESS [ 5.338 s]
[INFO] GeoNetwork schema plugin for ISO19139/119 standards SUCCESS [ 8.432 s]
[INFO] GeoNetwork core ................................... SUCCESS [ 16.304 s]
[INFO] GeoNetwork schema plugin for Dublin Core records retrieved by CSW SUCCESS [ 5.031 s]
[INFO] GeoNetwork schema plugin for Dublin Core standard . SUCCESS [ 8.419 s]
[INFO] GeoNetwork schema plugin for ISO19110 standard .... SUCCESS [ 3.627 s]
[INFO] GeoNetwork CSW server ............................. SUCCESS [ 5.546 s]
[INFO] GeoNetwork harvesters ............................. SUCCESS [ 3.888 s]
[INFO] GeoNetwork health monitor ......................... SUCCESS [ 2.489 s]
[INFO] GeoNetwork services ............................... SUCCESS [ 8.597 s]
[INFO] Geonetwork Web Resources 4 Java ................... SUCCESS [ 5.261 s]
[INFO] Cobweb Customizations ............................. SUCCESS [ 4.226 s]
[INFO] GeoNetwork INSPIRE Atom ........................... SUCCESS [ 3.990 s]
[INFO] Tests for schema plugins .......................... SUCCESS [ 2.334 s]
[INFO] GeoNetwork user interface module .................. SUCCESS [ 35.356 s]
[INFO] JS API and Service documentation .................. SUCCESS [ 21.203 s]
[INFO] GeoNetwork web client module ...................... SUCCESS [ 47.484 s]
[INFO] GeoNetwork Web module ............................. SUCCESS [ 48.490 s]
[INFO] GeoNetwork E2E Javascript Tests ................... SUCCESS [ 1.645 s]
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 02:19 min (Wall Clock)
[INFO] Finished at: 2015-07-17T10:36:43+01:00
[INFO] Final Memory: 232M/441M
[INFO] ------------------------------------------------------------------------

这将生成一个war文件,您可以在web/target上的任何Java应用程序容器(服务器,如Tomcat)中使用它/地理网络.战争

祝贺 你!您已经准备好运行GeoNetwork了。为此,只需转到web文件夹并在其中运行Jetty:

$ cd web; mvn jetty:run

Jetty启动后,您可以通过打开浏览器并输入to来查看正在运行的geornetworkhttp://localhost:8080/地理网络