(可选)生成¶
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/地理网络