[External] : Re: apps compilation fails on ubuntu 20.04
Abhinay Agarwal
abhinay_agarwal at live.com
Fri Aug 13 11:15:57 UTC 2021
The piece of code responsible for the exception is:
for (File f : configurations.compileClasspath.files) {
// Have to rename the swt jar because it is some platform specific name but
// for the sake of the IDEs we need to have a single stable name that works
// on every platform
copy {
into libsDir
from f.getParentFile()
include "**/*swt*.jar"
includeEmptyDirs = false
rename ".*swt.*jar", "swt-debug\\.jar"
}
}
>From the code snippet, it looks like Gradle is being very pro-active and complaining that this could end up with multiple jar files containing "swt" in their name and we need to provide a duplicate strategy for it.
We can either provide a duplicatesStrategy or update the above to the following:
copy {
into libsDir
from configurations.compileClasspath.files
include "**/*swt*.jar"
includeEmptyDirs = false
rename ".*swt.*jar", "swt-debug\\.jar"
// duplicatesStrategy = DuplicatesStrategy.WARN
}
________________________________
From: Kevin Rushforth <kevin.rushforth at oracle.com>
Sent: Friday, August 13, 2021 2:24 AM
To: Abhinay Agarwal <abhinay_agarwal at live.com>; openjfx-dev at openjdk.java.net <openjfx-dev at openjdk.java.net>
Subject: Re: [External] : Re: apps compilation fails on ubuntu 20.04
Interesting. I wonder what it is about your environment that causes the duplicate, since we don't see the problem in our CI builds nor in the GitHub Actions builds. I presume you have done a clean build and still see it? It is possible that you have some SWT classes in your classpath or jlink'ed into your boot JDK?
-- Kevin
On 8/12/2021 1:39 PM, Abhinay Agarwal wrote:
Hi Kevin,
My local repository is up-to-date with the jfx repository.
The failure happens while trying to copy swt-debug.jar:
$ sh gradlew sdk
...
> Task :swt:classes FAILED
FAILURE: Build failed with an exception.
* Where:
Build file '/tmp/jfx/build.gradle' line: 2677
* What went wrong:
Execution failed for task ':swt:classes'.
> Entry swt-debug.jar is a duplicate but no duplicate handling strategy has been set. Please refer to https://docs.gradle.org/7.0.1/dsl/org.gradle.api.tasks.Copy.html#org.gradle.api.tasks.Copy:duplicatesStrategy<https://urldefense.com/v3/__https://docs.gradle.org/7.0.1/dsl/org.gradle.api.tasks.Copy.html*org.gradle.api.tasks.Copy:duplicatesStrategy__;Iw!!ACWV5N9M2RV99hQ!fkRdlKBh300gss2krEHXu3UBrH7WOoht8YhvBygI4oIQd5dXyA2dXSrcTpkY5GOP5IQU$> for details.
P.S. Adding a `duplicatesStrategy` to the copy task also helps with the issue.
--Abhinay
________________________________
From: openjfx-dev <openjfx-dev-retn at openjdk.java.net><mailto:openjfx-dev-retn at openjdk.java.net> on behalf of Kevin Rushforth <kevin.rushforth at oracle.com><mailto:kevin.rushforth at oracle.com>
Sent: Friday, August 13, 2021 1:22 AM
To: openjfx-dev at openjdk.java.net<mailto:openjfx-dev at openjdk.java.net> <openjfx-dev at openjdk.java.net><mailto:openjfx-dev at openjdk.java.net>
Subject: Re: apps compilation fails on ubuntu 20.04
I still need to catch up on my email, since I still have the original
question in my queue.
The answer to the original query is that there is a known bug with ant
1.10.7 [1] that will cause this error. You can either use ant 1.10.5
(which is the one we specify in build.properties) or use ant 1.10.8.
As for the gradle sdk problem, I've not seen any problems relating to
using gradle 7.0.1. Is your repo up to date? Specifically, you need the
following commit:
https://github.com/openjdk/jfx/commit/111bac4180a646662a81223bdbb56880789d5a90<https://urldefense.com/v3/__https://github.com/openjdk/jfx/commit/111bac4180a646662a81223bdbb56880789d5a90__;!!ACWV5N9M2RV99hQ!fkRdlKBh300gss2krEHXu3UBrH7WOoht8YhvBygI4oIQd5dXyA2dXSrcTpkY5KEBj0BS$>
-- Kevin
[1] https://bz.apache.org/bugzilla/show_bug.cgi?id=63874<https://urldefense.com/v3/__https://bz.apache.org/bugzilla/show_bug.cgi?id=63874__;!!ACWV5N9M2RV99hQ!fkRdlKBh300gss2krEHXu3UBrH7WOoht8YhvBygI4oIQd5dXyA2dXSrcTpkY5Bmaafi0$>
On 8/12/2021 12:33 PM, Abhinay Agarwal wrote:
> I am on Ubuntu 20.04. Using ANT 1.10.8, "gradlew apps" works for me.
>
> However, "gradlew sdk" fails for me since we upgraded to Gradle 7.0.1. I always switch back to Gradle 6.9 to build a local sdk.
> ________________________________
> From: openjfx-dev <openjfx-dev-retn at openjdk.java.net><mailto:openjfx-dev-retn at openjdk.java.net> on behalf of Thiago Milczarek Sayão <thiago.sayao at gmail.com><mailto:thiago.sayao at gmail.com>
> Sent: Friday, August 6, 2021 8:05 AM
> To: openjfx-dev at openjdk.java.net<mailto:openjfx-dev at openjdk.java.net> <openjfx-dev at openjdk.java.net><mailto:openjfx-dev at openjdk.java.net>
> Subject: apps compilation fails on ubuntu 20.04
>
> Hi
>
> Does anyone knows how to get *gradlew apps* working on ubuntu 20.04?
>
> I have:
> Apache Ant(TM) version 1.10.7 compiled on October 24 2019
> openjdk version "16.0.1" 2021-04-20
>
> I want to run the test apps.
>
> -do-compile:
> [javac] Compiling 143 source files to
> /home/tsayao/IdeaProjects/jfx/apps/samples/3DViewer/build/classes
> [javac] error: invalid flag:
> @/home/tsayao/IdeaProjects/jfx/build/compile.args
> [javac] Usage: javac <options> <source files>
> [javac] use --help for a list of possible options
>
> Thanks.
More information about the openjfx-dev
mailing list