Skip to content

Commit 2b82962

Browse files
authored
Documentation 4.4: Update Java references to Java 11, update link to the manual and release scripts (geonetwork#7378)
* Update Java references to Java 11 and update link to the manual * Update release scripts to remove Sphinx docs updates and fix SQL migration script folder name * Add Tomcat / Jetty versions and JAVA_OPTS configuration for metrics endpoint
1 parent ca85e1f commit 2b82962

File tree

9 files changed

+30
-40
lines changed

9 files changed

+30
-40
lines changed

docs/manual/docs/help/index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,6 @@ GeoNetwork is a catalog application to manage spatially referenced resources. It
1010

1111
!!! info "Reference"
1212

13-
[GeoNetwork Manual](https://geonetwork-opensource.org/manuals/4.0.x/en/#)
13+
[GeoNetwork Manual](https://docs.geonetwork-opensource.org/4.4)
1414

1515
[GeoNetwork opensource](http://geonetwork-opensource.org)

docs/manual/docs/install-guide/index.md

+3-3
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
# Installation guide {#installation}
22

3-
!!! info "Version Added"
3+
!!! info
44

5-
3.2
5+
GeoNetwork 4.4 requires a Java 11 environment (JRE) to be installed on your system. Later versions of Java will not work at present. This must be done prior to installation.
66

7-
**Important: GeoNetwork requires a Java 8 environment (JRE) to be installed on your system. Later versions of Java will not work at present. This must be done prior to installation.**
7+
Prior versions of GeoNetwork require a Java 8 environment (JRE) to be installed on your system.
88

99
Before you can use GeoNetwork on your own computer, you need to install it. There are several different ways to install GeoNetwork:
1010

docs/manual/docs/install-guide/installing-from-source-code.md

+7-12
Original file line numberDiff line numberDiff line change
@@ -2,20 +2,15 @@
22

33
## System Requirements
44

5-
### Java 8
5+
### Java 11
66

7-
GeoNetwork is a Java 8 application that runs as a servlet, which means that a Java Development Kit (JDK) must be installed in order to build and run it. You can get a Java 8 JDK from your Linux distribution, [Oracle OpenJDK](http://openjdk.java.net/) or [AdoptOpenJDK](https://adoptopenjdk.net). Please note that the Java 8 [Oracle JDK](http://www.oracle.com/technetwork/java/javase/downloads) is currently only being distributed for testing purposes.
7+
GeoNetwork 4.4 is a Java 11 application that runs as a servlet, which means that a Java Development Kit (JDK) must be installed in order to build and run it. You can get a Java 11 JDK from your Linux distribution, [Oracle OpenJDK](http://openjdk.java.net/) or [AdoptOpenJDK](https://adoptopenjdk.net). Please note that the Java 11 [Oracle JDK](http://www.oracle.com/technetwork/java/javase/downloads) is currently only being distributed for testing purposes.
88

9-
Because GeoNetwork is developed with Java 8 (LTS), this has the following implications:
9+
Because GeoNetwork is developed with Java 11 (LTS), it won't run at all with earlier releases.
1010

11-
- GeoNetwork should not be developed with newer versions of Java.
12-
- Java 11 (LTS) is **not supported** at this time.
13-
- GeoNetwork won't run at all with Java 7 (1.6) or earlier releases.
14-
15-
16-
!!! Note
17-
18-
GeoNetwork 4.4.0 is scheduled to support Java 11
11+
- GeoNetwork should not be developed with newer versions of Java.
12+
- It won't run at all with earlier releases.
13+
- Java 17 (LTS) is **not supported** at this time.
1914

2015
### Application Server
2116

@@ -49,7 +44,7 @@ The software runs in different ways depending on the servlet container you are u
4944

5045
The following tools are required to be installed to setup a development environment for GeoNetwork:
5146

52-
- **Java 8** - Developing with GeoNetwork requires Java Development Kit (JDK) 1.8.
47+
- **Java 11** - Developing with GeoNetwork requires Java Development Kit (JDK) 11.
5348
- **Maven** 3.1.0+ - GeoNetwork uses [Maven](http://maven.apache.org/) to manage the build process and the dependencies. Once is installed, you should have the mvn command in your path (on Windows systems, you have to open a shell to check).
5449
- **Git** - GeoNetwork source code is stored and versioned in [a Git repository on Github](https://github.com/geonetwork/core-geonetwork). Depending on your operating system a variety of Git clients are available. Please check the Git website for some [alternatives](http://git-scm.com/downloads/guis) and good [documentation](http://git-scm.com/documentation). More documentation can be found on the [Github website](https://help.github.com/).
5550
- **Ant** - GeoNetwork uses [Ant](http://ant.apache.org/) to build the installer. Version 1.6.5 works but any other recent version should be OK. Once installed, you should have the Ant command in your path (on Windows systems, you have to open a shell to check).

docs/manual/docs/install-guide/installing-from-war-file.md

+7
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@ Host ports requirements:
1111
- [Kibana](https://www.elastic.co/kibana/): 5601
1212
- Database eg. 5432 for a default [PostgreSQL](https://www.postgresql.org/) installation
1313

14+
15+
For [Apache Tomcat](http://tomcat.apache.org/) we recommend the following versions: 8.5.x and 9.0.x.
16+
For [Jetty](https://www.eclipse.org/jetty/) we the following versions: 9.4.x.
17+
1418
1. Download the WAR file
1519

1620
GeoNetwork releases are available in <https://sourceforge.net/projects/geonetwork/files/GeoNetwork_opensource/>
@@ -37,6 +41,9 @@ Host ports requirements:
3741

3842
You need to ensure Tomcat is configured with enough memory for GeoNetwork to launch. This can be be configured via the `setenv` script in tomcat with the appropriate memory for the JAVA_OPTS property). `-Xms2g -Xmx2g` is usually fine.
3943

44+
!!! note
45+
46+
For the `/monitor/metrics` endpoint to work correctly, you must add to `JAVA_OPTS` the following option: `--add-opens=jdk.management/com.sun.management.internal=ALL-UNNAMED`
4047

4148
4. Configure the search platform
4249

docs/manual/docs/maintainer-guide/production-use/index.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ GeoNetwork may run out of database connections, especially if a catalogue is set
1212

1313
## Java container
1414

15-
GeoNetwork requires Java 8. The Oracle JRE version 8 is reaching end-of-live, we suggest to use the [openJDK](https://adoptopenjdk.net).
15+
GeoNetwork 4.4 requires Java 11. The Oracle JRE version 8 is reaching end-of-live, we suggest to use the [openJDK](https://adoptopenjdk.net).
1616

1717
GeoNetwork arrives with a default container called Jetty. Jetty is a powerful minimal container implementation. If you need more configuration options consider to use Tomcat. Other containers can be used, but there are not many user experiences. Read more at [Installing from WAR file](../../install-guide/installing-from-war-file.md)
1818

docs/manual/docs/tutorials/introduction/deployment/build.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ In this paragraph some guidance will be provided to build GeoNetwork from source
44

55
The source code of GeoNetwork is available at [Github](https://github.com/geonetwork/core-geonetwork). This means that you can clone, fork and propose pushes of your custom changes. If you are not familiar with repositories of code or git, you should check [this quick manual](https://try.github.io/levels/1/challenges/1).
66

7-
GeoNetwork is a java project using [Maven version 3+](https://Maven.apache.org/). It is written on **Java 8**. It works both with OpenJDK or the Oracle version. There are several ways to install this on your local machine; for example if you have a Debian based OS (like Ubuntu), you can install them with just this command:
7+
GeoNetwork 4.4 is a java project using [Maven version 3+](https://Maven.apache.org/). It is written on **Java 11**. It works both with OpenJDK or the Oracle version. There are several ways to install this on your local machine; for example if you have a Debian based OS (like Ubuntu), you can install them with just this command:
88

99
``` bash
1010
$ sudo apt-get install maven git

update-version.sh

+2-8
Original file line numberDiff line numberDiff line change
@@ -94,12 +94,6 @@ echo
9494

9595
# TODO: check that version is the version in the file to be updated.
9696

97-
# Update version in sphinx doc files
98-
echo 'Documentation'
99-
echo ' * updating docs/manuals/source/conf.py'
100-
sed $sedopt "s/${version}/${new_version_main}/g" docs/manuals/source/conf.py
101-
echo
102-
10397
# Update release properties
10498
echo 'Release (ZIP bundle)'
10599
echo ' * updating release/build.properties'
@@ -112,8 +106,8 @@ echo 'SQL script'
112106
sed $sedopt "s/'system\/platform\/version', '.*', 0/'system\/platform\/version', '${new_version_main}', 0/g" web/src/main/webapp/WEB-INF/classes/setup/sql/data/data-db-default.sql
113107
sed $sedopt "s/'system\/platform\/subVersion', '.*', 0/'system\/platform\/subVersion', '${sub_version}', 0/g" web/src/main/webapp/WEB-INF/classes/setup/sql/data/data-db-default.sql
114108

115-
find . -wholename *v${version//[.]/}/migrate-default.sql -exec sed $sedopt "s/value='${version}' WHERE name='system\/platform\/version'/value='${new_version_main}' WHERE name='system\/platform\/version'/g" {} \;
116-
find . -wholename *v${version//[.]/}/migrate-default.sql -exec sed $sedopt "s/value='.*' WHERE name='system\/platform\/subVersion'/value='${sub_version}' WHERE name='system\/platform\/subVersion'/g" {} \;
109+
find . -wholename *v${new_version_main_nopoint//[.]/}/migrate-default.sql -exec sed $sedopt "s/value='${version}' WHERE name='system\/platform\/version'/value='${new_version_main}' WHERE name='system\/platform\/version'/g" {} \;
110+
find . -wholename *v${new_version_main_nopoint//[.]/}/migrate-default.sql -exec sed $sedopt "s/value='.*' WHERE name='system\/platform\/subVersion'/value='${sub_version}' WHERE name='system\/platform\/subVersion'/g" {} \;
117111

118112
# Update version pom files
119113
mvn versions:set-property -Dproperty=gn.project.version -DnewVersion=${new_version}

updateBranchVersions.sh

+5-8
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
#!/bin/bash
22

3-
# Usage to update branch from a release 2.6.2 version to 2.6.3-SNAPSHOT version
3+
# Usage to update branch from a release 2.6.2 version to 2.6.3-SNAPSHOT version
44
# In root folder of branch code: ./updateBranchVersion.sh 2.6.2 2.6.3
55

6-
function showUsage
6+
function showUsage
77
{
8-
echo -e "\nThis script is used to update branch from a release version to next SNAPSHOT version. Should be used in branch after creating a new release (tag)."
8+
echo -e "\nThis script is used to update branch from a release version to next SNAPSHOT version. Should be used in branch after creating a new release (tag)."
99
echo
1010
echo -e "Usage: ./`basename $0 $1` actual_version next_version"
1111
echo
@@ -14,7 +14,7 @@ function showUsage
1414
echo
1515
}
1616

17-
if [ "$1" = "-h" ]
17+
if [ "$1" = "-h" ]
1818
then
1919
showUsage
2020
exit
@@ -58,16 +58,13 @@ else
5858
fi
5959

6060
echo
61-
echo 'Your Operating System is' $OSTYPE
61+
echo 'Your Operating System is' $OSTYPE
6262
echo 'sed will use the following option: ' $sedopt
6363
echo
6464

6565
version="$1"
6666
new_version="$2"
6767

68-
# Update version in sphinx doc files
69-
sed $sedopt "s/${version}/${new_version}-SNAPSHOT/g" docs/manuals/source/conf.py
70-
7168
# Update release properties
7269
sed $sedopt "s/version=${version}/version=${new_version}/g" release/build.properties
7370
sed $sedopt "s/subVersion=0/subVersion=SNAPSHOT/g" release/build.properties

updateReleaseVersions.sh

+3-6
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
function showUsage
77
{
8-
echo -e "\nThis script is used to update branch from a SNAPSHOT version to a release version. Should be used in branch before creating a new release (tag)."
8+
echo -e "\nThis script is used to update branch from a SNAPSHOT version to a release version. Should be used in branch before creating a new release (tag)."
99
echo
1010
echo -e "Usage: `basename $0 $1` version"
1111
echo
@@ -14,7 +14,7 @@ function showUsage
1414
echo
1515
}
1616

17-
if [ "$1" = "-h" ]
17+
if [ "$1" = "-h" ]
1818
then
1919
showUsage
2020
exit
@@ -45,15 +45,12 @@ else
4545
fi
4646

4747
echo
48-
echo 'Your Operating System is' $OSTYPE
48+
echo 'Your Operating System is' $OSTYPE
4949
echo 'sed will use the following option: ' $sedopt
5050
echo
5151

5252
version="$1"
5353

54-
# Update version in sphinx doc files
55-
sed $sedopt "s/${version}-SNAPSHOT/${version}/g" docs/manuals/source/conf.py
56-
5754
# Update release subversion
5855
sed $sedopt "s/subVersion=SNAPSHOT/subVersion=0/g" release/build.properties
5956

0 commit comments

Comments
 (0)