[
https://issues.apache.org/jira/browse/MNG-7172?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17366237#comment-17366237
]
Michael Osipov commented on MNG-7172:
-------------------------------------
My comparison:
{noformat}
$ ./apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi/bin/mvn -v
Apache Maven 4.0.0-alpha-1-SNAPSHOT (6b56fc8424aa9657b4d2af75233f509c07d248e7)
Maven home: /home/mosipov/apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi
Java version: 1.8.0_292, vendor: OpenJDK BSD Porting Team, runtime:
/usr/local/openjdk8/jre
Default locale: de_DE, platform encoding: UTF-8
OS name: "freebsd", version: "12.2-stable", arch: "amd64", family: "unix"
$ for i in {1..10}; do time
./apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi/bin/mvn -v >&-; done
real 0m0,341s
user 0m0,360s
sys 0m0,082s
real 0m0,232s
user 0m0,267s
sys 0m0,057s
real 0m0,233s
user 0m0,269s
sys 0m0,054s
real 0m0,232s
user 0m0,282s
sys 0m0,041s
real 0m0,231s
user 0m0,279s
sys 0m0,044s
real 0m0,232s
user 0m0,300s
sys 0m0,022s
real 0m0,232s
user 0m0,264s
sys 0m0,058s
real 0m0,232s
user 0m0,247s
sys 0m0,076s
real 0m0,232s
user 0m0,311s
sys 0m0,011s
real 0m0,232s
user 0m0,272s
sys 0m0,050s
$ for i in {1..10}; do time
./apache-maven-4.0.0-alpha-1-SNAPSHOT-partial-jansi/bin/mvn -v >&-; done
real 0m0,411s
user 0m0,449s
sys 0m0,107s
real 0m0,245s
user 0m0,309s
sys 0m0,029s
real 0m0,246s
user 0m0,299s
sys 0m0,040s
real 0m0,244s
user 0m0,256s
sys 0m0,081s
real 0m0,245s
user 0m0,299s
sys 0m0,039s
real 0m0,246s
user 0m0,258s
sys 0m0,082s
real 0m0,245s
user 0m0,271s
sys 0m0,067s
real 0m0,245s
user 0m0,265s
sys 0m0,073s
real 0m0,245s
user 0m0,300s
sys 0m0,038s
real 0m0,244s
user 0m0,268s
sys 0m0,069s
{noformat}
compared with Java 11:
{noformat}
$ ./apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi/bin/mvn -v
Apache Maven 4.0.0-alpha-1-SNAPSHOT (6b56fc8424aa9657b4d2af75233f509c07d248e7)
Maven home: /home/mosipov/apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi
Java version: 11.0.11, vendor: OpenJDK BSD Porting Team, runtime:
/usr/local/openjdk11
Default locale: de_DE, platform encoding: UTF-8
OS name: "freebsd", version: "12.2-stable", arch: "amd64", family: "unix"
$ for i in {1..10}; do time
./apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi/bin/mvn -v >&-; done
real 0m0,355s
user 0m0,518s
sys 0m0,044s
real 0m0,238s
user 0m0,389s
sys 0m0,002s
real 0m0,240s
user 0m0,359s
sys 0m0,031s
real 0m0,240s
user 0m0,347s
sys 0m0,046s
real 0m0,239s
user 0m0,365s
sys 0m0,028s
real 0m0,240s
user 0m0,372s
sys 0m0,018s
real 0m0,239s
user 0m0,364s
sys 0m0,027s
real 0m0,239s
user 0m0,356s
sys 0m0,039s
real 0m0,239s
user 0m0,361s
sys 0m0,031s
real 0m0,240s
user 0m0,388s
sys 0m0,007s
$ for i in {1..10}; do time
./apache-maven-4.0.0-alpha-1-SNAPSHOT-partial-jansi/bin/mvn -v >&-; done
real 0m0,340s
user 0m0,518s
sys 0m0,040s
real 0m0,257s
user 0m0,401s
sys 0m0,033s
real 0m0,258s
user 0m0,371s
sys 0m0,043s
real 0m0,257s
user 0m0,401s
sys 0m0,028s
real 0m0,247s
user 0m0,409s
sys 0m0,010s
real 0m0,258s
user 0m0,404s
sys 0m0,024s
real 0m0,258s
user 0m0,408s
sys 0m0,008s
real 0m0,247s
user 0m0,389s
sys 0m0,030s
real 0m0,258s
user 0m0,388s
sys 0m0,041s
real 0m0,258s
user 0m0,369s
sys 0m0,047s
{noformat}
I see a slight overhead when extraction is perfomed. It also seems that Java 11
has got slower.
But with 16:
{noformat}
$ ./apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi/bin/mvn -v
Apache Maven 4.0.0-alpha-1-SNAPSHOT (6b56fc8424aa9657b4d2af75233f509c07d248e7)
Maven home: /home/mosipov/apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi
Java version: 16.0.1, vendor: OpenJDK BSD Porting Team, runtime:
/usr/local/openjdk16
Default locale: de_DE, platform encoding: UTF-8
OS name: "freebsd", version: "12.2-stable", arch: "amd64", family: "unix"
$ for i in {1..10}; do time
./apache-maven-4.0.0-alpha-1-SNAPSHOT-full-jansi/bin/mvn -v >&-; done
real 0m0,321s
user 0m0,467s
sys 0m0,075s
real 0m0,178s
user 0m0,267s
sys 0m0,026s
real 0m0,178s
user 0m0,239s
sys 0m0,050s
real 0m0,177s
user 0m0,278s
sys 0m0,016s
real 0m0,176s
user 0m0,267s
sys 0m0,024s
real 0m0,177s
user 0m0,285s
sys 0m0,007s
real 0m0,177s
user 0m0,262s
sys 0m0,027s
real 0m0,177s
user 0m0,270s
sys 0m0,022s
real 0m0,177s
user 0m0,259s
sys 0m0,033s
real 0m0,178s
user 0m0,278s
sys 0m0,015s
$ for i in {1..10}; do time
./apache-maven-4.0.0-alpha-1-SNAPSHOT-partial-jansi/bin/mvn -v >&-; done
real 0m0,182s
user 0m0,288s
sys 0m0,032s
real 0m0,183s
user 0m0,309s
sys 0m0,014s
real 0m0,183s
user 0m0,282s
sys 0m0,038s
real 0m0,180s
user 0m0,310s
sys 0m0,009s
real 0m0,182s
user 0m0,289s
sys 0m0,030s
real 0m0,183s
user 0m0,290s
sys 0m0,030s
real 0m0,184s
user 0m0,275s
sys 0m0,052s
real 0m0,182s
user 0m0,298s
sys 0m0,021s
real 0m0,182s
user 0m0,295s
sys 0m0,026s
real 0m0,182s
user 0m0,315s
sys 0m0,004s
{noformat}
> Warning about signing of libjansi on macOS
> ------------------------------------------
>
> Key: MNG-7172
> URL: https://issues.apache.org/jira/browse/MNG-7172
> Project: Maven
> Issue Type: Improvement
> Reporter: Konrad Windszus
> Priority: Blocker
> Attachments: mng-7172-1.jpg, mng-7172-2.jpg
>
>
> _(Copying from MNG-7165)_
>
> With the latest SNAPSHOT (downloaded from
> [https://ci-builds.apache.org/job/Maven/job/maven-box/job/maven/job/master/169/artifact/org/apache/maven/apache-maven/4.0.0-alpha-1-SNAPSHOT/apache-maven-4.0.0-alpha-1-SNAPSHOT-bin.tar.gz])
> I get
> {code:java}
> ./mvn --version
> Failed to load native library:libjansi.jnilib. osinfo: Mac/x86_64
> java.lang.UnsatisfiedLinkError:
> /Users/konradwindszus/Downloads/apache-maven/lib/jansi-native/Mac/x86_64/libjansi.jnilib:
>
> dlopen(/Users/konradwindszus/Downloads/apache-maven/lib/jansi-native/Mac/x86_64/libjansi.jnilib,
> 1): no suitable image found. Did find:
>
> /Users/konradwindszus/Downloads/apache-maven/lib/jansi-native/Mac/x86_64/libjansi.jnilib:
> code signature in
> (/Users/konradwindszus/Downloads/apache-maven/lib/jansi-native/Mac/x86_64/libjansi.jnilib)
> not valid for use in process using Library Validation: library load
> disallowed by system policy
> Apache Maven 4.0.0-alpha-1-SNAPSHOT (371faf7a49298bd1752632c2675aa499fee64667)
> Maven home: /Users/konradwindszus/Downloads/apache-maven
> Java version: 11.0.11, vendor: AdoptOpenJDK, runtime:
> /Library/Java/JavaVirtualMachines/adoptopenjdk-11.jdk/Contents/Home
> Default locale: en_DE, platform encoding: UTF-8
> OS name: "mac os x", version: "11.4", arch: "x86_64", family: "mac"
> {code}
> And Mac OS shows a warning {{“libjansi.jnilib” cannot be opened because the
> developer cannot be verified.}}.
> Is the last version of JAnsi included in Maven properly signed?
> ----
> Options we have:
> Do nothing
> (+) consistent use of JAnsi for all OSes
> (-) no additional extraction of native libraries
> (-) Annoying popup + warning for MacOS users (although as intended due to
> its security policy)
> Exclude lib/jansi-native/osx
> (+) Maven runs without popup/warning
> (?) no additional extraction of native libraries
> (-) inconsistent use of JAnsi for OSes
> Don't unpack to lib/jansi-native
> (+) consistent use of JAnsi for all OSes
> (-) Maven will have extra overhead for every run due to extracting
> jansi-native
> Unpack lib/jansi-native on first use
> (+) consistent use of JAnsi for all OSes
> (-) In general we consider conf/ as the only directory that can be changed
> after installing. Now lib/jansi-native would become a "dynamic" directory.
> Get a signed native library for MacOS
> (+) consistent use of JAnsi for all OSes
> (-) somebody needs to build & sign the JAnsi native lib (requires a Mac and
> an Apple Developer ID)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)