You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by mi...@apache.org on 2021/09/16 16:11:10 UTC
[maven] 01/01: [MNG-7254] Expand Windows native libraries for Jansi
due to JDK-8195129 (workaround)
This is an automated email from the ASF dual-hosted git repository.
michaelo pushed a commit to branch MNG-7254_maven-3.8.x
in repository https://gitbox.apache.org/repos/asf/maven.git
commit 8c66edc0417f37540b3a6ef4b266ff88bdbd8327
Author: Michael Osipov <mi...@apache.org>
AuthorDate: Thu Sep 16 13:52:15 2021 +0200
[MNG-7254] Expand Windows native libraries for Jansi due to JDK-8195129 (workaround)
This closes #542
---
apache-maven/pom.xml | 16 ++++++++++++++++
apache-maven/src/bin/mvn | 1 +
apache-maven/src/bin/mvn.cmd | 1 +
apache-maven/src/lib/jansi-native/README.txt | 8 ++++++++
apache-maven/src/main/assembly/.component.xml.swp | Bin 0 -> 12288 bytes
apache-maven/src/main/assembly/component.xml | 7 +++++++
6 files changed, 33 insertions(+)
diff --git a/apache-maven/pom.xml b/apache-maven/pom.xml
index d98d432..b6068d0 100644
--- a/apache-maven/pom.xml
+++ b/apache-maven/pom.xml
@@ -133,6 +133,22 @@ under the License.
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-dependency-plugin</artifactId>
+ <configuration>
+ <includeArtifactIds>jansi</includeArtifactIds>
+ <includes>org/fusesource/jansi/internal/native/Windows/**</includes>
+ </configuration>
+ <executions>
+ <execution>
+ <id>unpack-jansi-native</id>
+ <goals>
+ <goal>unpack-dependencies</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<executions>
<execution>
diff --git a/apache-maven/src/bin/mvn b/apache-maven/src/bin/mvn
index 29e0eab..90f9a75 100755
--- a/apache-maven/src/bin/mvn
+++ b/apache-maven/src/bin/mvn
@@ -197,5 +197,6 @@ exec "$JAVACMD" \
-classpath "${CLASSWORLDS_JAR}" \
"-Dclassworlds.conf=${MAVEN_HOME}/bin/m2.conf" \
"-Dmaven.home=${MAVEN_HOME}" \
+ "-Dlibrary.jansi.path=${MAVEN_HOME}/lib/jansi-native" \
"-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \
${CLASSWORLDS_LAUNCHER} "$@"
diff --git a/apache-maven/src/bin/mvn.cmd b/apache-maven/src/bin/mvn.cmd
index fcb0f45..9fb4a98 100644
--- a/apache-maven/src/bin/mvn.cmd
+++ b/apache-maven/src/bin/mvn.cmd
@@ -174,6 +174,7 @@ set CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher
-classpath %CLASSWORLDS_JAR% ^
"-Dclassworlds.conf=%MAVEN_HOME%\bin\m2.conf" ^
"-Dmaven.home=%MAVEN_HOME%" ^
+ "-Dlibrary.jansi.path=%MAVEN_HOME%\lib\jansi-native" ^
"-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" ^
%CLASSWORLDS_LAUNCHER% %MAVEN_CMD_LINE_ARGS%
if ERRORLEVEL 1 goto error
diff --git a/apache-maven/src/lib/jansi-native/README.txt b/apache-maven/src/lib/jansi-native/README.txt
new file mode 100644
index 0000000..26a957e
--- /dev/null
+++ b/apache-maven/src/lib/jansi-native/README.txt
@@ -0,0 +1,8 @@
+This directory contains Jansi native libraries extracted from Jansi JAR.
+
+You can add your own build for platforms not natively supported by Jansi.
+See here [1] on how to compile for your platform and and here [2] how libraries
+follow Jansi's directory and filename conventions.
+
+[1] https://github.com/fusesource/jansi/tree/master/src/main/native
+[2] https://github.com/fusesource/jansi/blob/321a8ff71c731e10f4ea05c607860180276b2215/src/main/java/org/fusesource/jansi/internal/OSInfo.java
diff --git a/apache-maven/src/main/assembly/.component.xml.swp b/apache-maven/src/main/assembly/.component.xml.swp
new file mode 100644
index 0000000..52c487e
Binary files /dev/null and b/apache-maven/src/main/assembly/.component.xml.swp differ
diff --git a/apache-maven/src/main/assembly/component.xml b/apache-maven/src/main/assembly/component.xml
index 657d06b..ad16c25 100644
--- a/apache-maven/src/main/assembly/component.xml
+++ b/apache-maven/src/main/assembly/component.xml
@@ -64,6 +64,13 @@ under the License.
</includes>
</fileSet>
<fileSet>
+ <directory>target/dependency/org/fusesource/jansi/internal/native</directory>
+ <outputDirectory>lib/jansi-native</outputDirectory>
+ <includes>
+ <include>**</include>
+ </includes>
+ </fileSet>
+ <fileSet>
<directory>src/bin</directory>
<outputDirectory>bin</outputDirectory>
<includes>