[ 
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)

Reply via email to