ソースコードから構築する¶
システム要求¶
Java 8¶
GeoNetworkはServletとして動作するJava 8アプリケーションであり,これを構築.実行するためにはJava開発Toolkit(JDK)を実装しなければならないことを意味する.Linux発行版からJava 8 JDKを得ることができます Oracle OpenJDK あるいは…。 AdoptOpenJDK それがそうです。Java 8に注意してください Oracle JDK 現在はテスト目的にのみ使用されている。
GeoNetworkはJava 8(LTS)を用いて開発されているため,以下のような意味を持つ.
GeoNetworkは比較的新しいバージョンのJavaを用いて開発すべきではない.
Java 11(LTS)は 支持しない この時に。
GeoNetworkはJava 7(1.6)以上ではまったく動作しない.
アプリケーションサーバ¶
次に、あなたはサーブレット容器が必要です。GeoNetworkには埋め込み容器が付属している。 Eclipse Jetty その速度は速く、ほとんどの応用に非常に適している。
もっと強い容器が必要でしたら、お勧めします Apache Tomcat それがそうです。Tomcatは負荷均衡,フォールトトレランスなどの生産機能を提供する.Apache Tomcatは広く用いられており,多くの組織がTomcat上でそのすべてのJava Webアプリケーションを標準化している.
以下の安定バージョンのTomcatをお勧めします。
Apache Tomcat 8.5
Apache Tomcat 9.0
データベース.データベース¶
ストレージについては、Oracle、MySQL、PostgreSQLなどのデータベース管理システム(DBMS)が必要です。GeoNetworkには組み込みDBMS(H 2)が付属しており、インストール中にデフォルトで使用されています。このDBMSは、1人または2人のユーザが数千個以下のメタデータレコードを使用する小型またはデスクトップインストールに使用することができる。より高い要求があれば、専門的で独立したDBMSを使用しなければなりません。
環境.¶
GeoNetworkはJavaで書かれており,主にLinux,Windows,MacOSでJavaをサポートしているプラットフォーム上で動作可能である.
GeoNetworkは資源集約型ではなく,機能の強い機器を必要としない.1 GBのRAMを使用すると良好な性能が得られます。ただし,提案するメモリ容量は2 GBである.
ハードディスク空間の場合、アプリケーション自体に必要な空間(約350 MB)およびデータに必要な空間(50 GB以上に増加する場合があります)を考慮しなければなりません。ほとんどの場合、250 GBの簡単な(SSD)ディスクで十分であるはずだ。インデックスを検索するためのディスク空間も必要です GEONETWORK_DATA_DIR/index
(デフォルトの場合、GEONETWORK_DATA_DIRは INSTALL_DIR/web/geonetwork/WEB_INF/data
)である。しかし,数千本のメタデータレコードしかなくてもインデックスが小さいため,通常500 MBの空間は十分である.
あなたが使用しているServletコンテナによると、ソフトウェアは異なる方法で動作します。
トム猫 -GeoNetworkは、WARファイルとして提供され、Tomcat webappsディレクトリに入れることができます。Tomcatは、起動時にWARファイルを展開します。そして、TomcatマネージャWebアプリケーションを使用してGeoNetworkを停止/起動することができます。起動もご利用いただけます。 そして電源を切ります。 Tomcat binディレクトリに位置するスクリプト(.*は.shまたは.batを表し,具体的にはあなたのオペレーティングシステムに依存する)が,Tomcatコンテナに他のWebアプリケーションがあれば影響を受ける.
波止場 提供されたコンテナを使用する場合、GeoNetworkのbinディレクトリのスクリプトを使用することができます。スクリプトは起動中です。 そして電源を切ります。 そしてあなたはそれらを実行するためにbinディレクトリにいなければならない。インストール後すぐにこれらのスクリプトを使用することができます。
道具¶
GeoNetworkの開発環境を設置するためには,以下のツールを実装する必要がある.
Java 8 -GeoNetworkを用いた開発にはJava開発Toolkit(JDK)1.8が必要である.
Maven 3.1.0+-地理的ネットワークの使用 Maven 構築過程や依存項を管理していますインストール後、あなたのパスにはmvnコマンドがあるはずです(Windowsシステムでは、シェルを開いてチェックしなければなりません)。
Git -GeoNetworkソースコードを格納し、バージョン制御を行う a Git repository on Github それがそうです。お客様のオペレーティングシステムによると、複数のGitクライアントを使用することができます。Gitサイトを見て、少し知ってください alternatives いいですよ。 documentation それがそうです。より多くの文書については、アクセスしてください Github website それがそうです。
Ant -地理的ネットワーク使用 Ant インストールプログラムを構築することができますバージョン1.6.5は動作可能であるが、他の最新バージョンであってもよいはずである。インストール後、PATHにはAntコマンドがあるはずです(Windowsシステムでは、シェルを開いてチェックしなければなりません)。
獅子面像 -GeoNetwork文書を良好なフォーマットで構築するためには、 Sphinx 使っています。Pythonインタプリタがシステムにない場合、Sphinxは動作しないので、インストールする必要がありますので注意してください Python それがそうです。
構築と運用¶
GeoNetworkを迅速に構築し、実行したい場合は、以下の操作を実行してください。
git clone --depth 3 --recursive https://github.com/geonetwork/core-geonetwork.git
cd core-geonetwork
mvn clean install -DskipTests
cd web
mvn jetty:run
ブラウザを開いてhttp://localhost:8080/geonnetworkにナビゲートします。
もっと詳しい説明については、読み続けてください。
ソースコードを見る¶
リポジトリをクローンして構築します:
git clone --recursive https://github.com/geonetwork/core-geonetwork.git
cd core-geonetwork
mvn clean install -DskipTests
サブモジュール.¶
GeoNetworkはサブモジュールを用い,これらのサブモジュールは --recursive
リポジトリをクローンする際のオプションです。
ご利用を逃したら --recursive
以下のコマンドを実行します。
cd core-geonetwork
git submodule init
git submodule update
サブモジュールは,外部依存関係を追跡するために用いられる.分岐変更後、それらを初期化して更新する必要があります:
git submodule update --init
外部依存項を更新した後にアプリケーションを再構築することを覚えておいてください。
地理的ネットワークを構築する¶
Githubリポジトリからコードが発行された後、GeoNetworkのルートフォルダに入り、Maven buildコマンドを実行します。
mvn clean install
構築が成功すれば、次のような出力が得られます。
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Summary:
[INFO] ------------------------------------------------------------------------
[INFO] GeoNetwork opensource ................................. SUCCESS [1.345s]
[INFO] Caching xslt module ................................... SUCCESS [1.126s]
[INFO] Jeeves modules ........................................ SUCCESS [3.970s]
[INFO] ArcSDE module (dummy-api) ............................. SUCCESS [0.566s]
[INFO] GeoNetwork web client module .......................... SUCCESS [23.084s]
[INFO] GeoNetwork user interface module ...................... SUCCESS [15.940s]
[INFO] Oaipmh modules ........................................ SUCCESS [1.029s]
[INFO] GeoNetwork domain ..................................... SUCCESS [0.808s]
[INFO] GeoNetwork core ....................................... SUCCESS [6.426s]
[INFO] GeoNetwork CSW server ................................. SUCCESS [2.050s]
[INFO] GeoNetwork health monitor ............................. SUCCESS [1.014s]
[INFO] GeoNetwork harvesters ................................. SUCCESS [2.583s]
[INFO] GeoNetwork services ................................... SUCCESS [3.178s]
[INFO] GeoNetwork Web module ................................. SUCCESS [2:31.387s]
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 3 minutes 35 seconds
[INFO] Finished at: Sun Oct 27 16:21:46 CET 2013
地元のMaven資料アーカイブにはGeoNetwork構成要素が含まれています ($HOME/.m2/repository/org/geonetwork-opensource
)。
オプションをコンパイルする¶
利用可能な多くのMaven構築オプションがあります。例えば、以下のオプションを使用したい場合があります。
-- Skip test
$ mvn install -DskipTests
-- Offline use
$ mvn install -o
-- Build really fast with 2 threads per cpu core
$ mvn install -o -DskipTests -T 2C
ご参照ください Maven documentation 他に選択肢はありませんか。
Mavenプロファイル¶
Mavenプロファイルは、他の構築構成を有効にするために使用されます。
いくつかのコンポーネント(例えばアプリケーションのWFS機能インデックス)はElasticsearchインスタンスに依存する.これらのオプションを有効にするには、ご利用ください `es
`プロファイルを構成します。
mvn clean install -Pes
組み込みJettyサーバの実行¶
MavenはJettyへの内蔵サポートを提供しています plug-in それがそうです。
組み込みJettyサーバを用いてGeoNetworkを実行するためには,ディレクトリを変更する必要がある. web モジュールは、次のMavenコマンドを実行します。
mvn jetty:run -Penv-dev
しばらくすると,GeoNetworkはhttp://localhost:8080/geonnetworkを介してアクセスできるはずである.
ユーザインタフェースに関する変更. web-ui モジュール内のメタデータアーキテクチャまたはメタデータアーキテクチャ。 schemas モジュールは,Jettyで以下のMavenコマンドを実行して配備することができる. web モジュール:
mvn process-resources