----- Original Message -----
From: "Mikolaj Izdebski" mizdebsk@redhat.com To: "java-devel" java-devel@lists.fedoraproject.org Cc: maven-owner@fedoraproject.org, "ant-owner" ant-owner@fedoraproject.org, mbooth@fedoraproject.org Sent: Friday, October 25, 2019 1:30:32 PM Subject: Switching Maven and Ant to OpenJDK 11
Hello,
Currently default Java runtime in Fedora is OpenJDK 8. This is not the latest OpenJDK packaged, but still remains system-default version. Because of that Apache Maven and Apache Ant in Fedora are built using OpenJDK 8 and run on OpenJDK 8.
I am planning to switch Maven 3.6 and Ant 1.10 modules to build with and run on OpenJDK 11, which is the latest LTS release of OpenJDK. This also means that future streams of javapackages-tools module will default to use OpenJDK 11 for building packages. Please let me know if you have any concerns.
My concern is what will happen to the libraries in the default module stream? When installing, e.g., dogtag-pki, this brings in the following packages from a default module stream:
apache-commons-cli-0:1.4-4.module_f28+3939+dc18cd75.noarch apache-commons-codec-0:1.11-3.module_f28+3939+dc18cd75.noarch apache-commons-io-1:2.6-3.module_f28+3939+dc18cd75.noarch apache-commons-logging-0:1.2-13.module_f28+3939+dc18cd75.noarch httpcomponents-client-0:4.5.5-4.module_f28+3939+dc18cd75.noarch httpcomponents-core-0:4.4.10-3.module_f28+3939+dc18cd75.noarch
Of these, apache-commons-{cli,codec,io,logging} are all directly required by dogtag-pki, which doesn't yet fully work with JDK-11. (I'm not quite sure how httpcomponents-{client,core} gets pulled in).
Will you continue building these with a target bytecode version for use with JDK8, even though you're building with JDK11? Or are you only building the maven and ant packages with JDK 11 (and not building all libraries in the module with JDK 11)?
Thanks,
- Alex
-- Mikolaj Izdebski
On Mon, Oct 28, 2019 at 1:52 PM Alex Scheel ascheel@redhat.com wrote:
I am planning to switch Maven 3.6 and Ant 1.10 modules to build with and run on OpenJDK 11, which is the latest LTS release of OpenJDK. This also means that future streams of javapackages-tools module will default to use OpenJDK 11 for building packages. Please let me know if you have any concerns.
My concern is what will happen to the libraries in the default module stream? When installing, e.g., dogtag-pki, this brings in the following packages from a default module stream:
This is a valid concern, thanks for bringing it up.
apache-commons-cli-0:1.4-4.module_f28+3939+dc18cd75.noarch apache-commons-codec-0:1.11-3.module_f28+3939+dc18cd75.noarch apache-commons-io-1:2.6-3.module_f28+3939+dc18cd75.noarch apache-commons-logging-0:1.2-13.module_f28+3939+dc18cd75.noarch httpcomponents-client-0:4.5.5-4.module_f28+3939+dc18cd75.noarch httpcomponents-core-0:4.4.10-3.module_f28+3939+dc18cd75.noarch
Of these, apache-commons-{cli,codec,io,logging} are all directly required by dogtag-pki, which doesn't yet fully work with JDK-11. (I'm not quite sure how httpcomponents-{client,core} gets pulled in).
Will you continue building these with a target bytecode version for use with JDK8, even though you're building with JDK11? Or are you only building the maven and ant packages with JDK 11 (and not building all libraries in the module with JDK 11)?
These libraries will still be built with JDK <= 8 bytecode, so they should continue to work with JDK 8.
-- Mikolaj Izdebski