commit
4edb68e7b3
36
README.en.md
36
README.en.md
@ -1,36 +0,0 @@
|
||||
# jarjar
|
||||
|
||||
#### Description
|
||||
Jar jar links is a utility that makes it easy to repackage java libraries.
|
||||
|
||||
#### Software Architecture
|
||||
Software architecture description
|
||||
|
||||
#### Installation
|
||||
|
||||
1. xxxx
|
||||
2. xxxx
|
||||
3. xxxx
|
||||
|
||||
#### Instructions
|
||||
|
||||
1. xxxx
|
||||
2. xxxx
|
||||
3. xxxx
|
||||
|
||||
#### Contribution
|
||||
|
||||
1. Fork the repository
|
||||
2. Create Feat_xxx branch
|
||||
3. Commit your code
|
||||
4. Create Pull Request
|
||||
|
||||
|
||||
#### Gitee Feature
|
||||
|
||||
1. You can use Readme\_XXX.md to support different languages, such as Readme\_en.md, Readme\_zh.md
|
||||
2. Gitee blog [blog.gitee.com](https://blog.gitee.com)
|
||||
3. Explore open source project [https://gitee.com/explore](https://gitee.com/explore)
|
||||
4. The most valuable open source project [GVP](https://gitee.com/gvp)
|
||||
5. The manual of Gitee [https://gitee.com/help](https://gitee.com/help)
|
||||
6. The most popular members [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
|
||||
37
README.md
37
README.md
@ -1,37 +0,0 @@
|
||||
# jarjar
|
||||
|
||||
#### 介绍
|
||||
Jar jar links is a utility that makes it easy to repackage java libraries.
|
||||
|
||||
#### 软件架构
|
||||
软件架构说明
|
||||
|
||||
|
||||
#### 安装教程
|
||||
|
||||
1. xxxx
|
||||
2. xxxx
|
||||
3. xxxx
|
||||
|
||||
#### 使用说明
|
||||
|
||||
1. xxxx
|
||||
2. xxxx
|
||||
3. xxxx
|
||||
|
||||
#### 参与贡献
|
||||
|
||||
1. Fork 本仓库
|
||||
2. 新建 Feat_xxx 分支
|
||||
3. 提交代码
|
||||
4. 新建 Pull Request
|
||||
|
||||
|
||||
#### 码云特技
|
||||
|
||||
1. 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
|
||||
2. 码云官方博客 [blog.gitee.com](https://blog.gitee.com)
|
||||
3. 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解码云上的优秀开源项目
|
||||
4. [GVP](https://gitee.com/gvp) 全称是码云最有价值开源项目,是码云综合评定出的优秀开源项目
|
||||
5. 码云官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
|
||||
6. 码云封面人物是一档用来展示码云会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)
|
||||
28
do-not-embed-asm.patch
Normal file
28
do-not-embed-asm.patch
Normal file
@ -0,0 +1,28 @@
|
||||
--- src/build.xml.orig 2014-12-18 21:38:42.035192783 +0000
|
||||
+++ src/build.xml 2014-12-18 21:39:34.233460061 +0000
|
||||
@@ -95,16 +95,10 @@
|
||||
<mkdir dir="dist"/>
|
||||
<jarjar jarfile="${jarfile}">
|
||||
<fileset dir="build/main"/>
|
||||
- <zipfileset src="lib/asm-4.0.jar"/>
|
||||
- <zipfileset src="lib/asm-commons-4.0.jar">
|
||||
- <include name="org/objectweb/asm/commons/Remap*.class"/>
|
||||
- <include name="org/objectweb/asm/commons/LocalVariablesSorter.class"/>
|
||||
- </zipfileset>
|
||||
<keep pattern="com.tonicsystems.jarjar.Main"/>
|
||||
<keep pattern="com.tonicsystems.jarjar.JarJarTask"/>
|
||||
<keep pattern="com.tonicsystems.jarjar.JarJarMojo"/>
|
||||
<rule pattern="com.tonicsystems.jarjar.util.**" result="com.tonicsystems.jarjar.ext_util.@1"/>
|
||||
- <rule pattern="org.objectweb.asm.**" result="com.tonicsystems.jarjar.asm.@1"/>
|
||||
<manifest>
|
||||
<attribute name="Main-Class" value="com.tonicsystems.jarjar.Main"/>
|
||||
<attribute name="Implementation-Version" value="${version}"/>
|
||||
@@ -199,7 +199,7 @@
|
||||
</target>
|
||||
|
||||
<target name="test-rejar" depends="jar">
|
||||
- <taskdef name="jarjar2" classname="com.tonicsystems.jarjar.JarJarTask" classpath="${jarfile}"/>
|
||||
+ <taskdef name="jarjar2" classname="com.tonicsystems.jarjar.JarJarTask" classpath="${jarfile}:lib/asm-4.0.jar:lib/asm-commons-4.0.jar"/>
|
||||
<delete file="${test.jar}"/>
|
||||
<jarjar2 jarfile="${test.jar}">
|
||||
<fileset dir="build/main"/>
|
||||
10
fix-maven-plugin.patch
Normal file
10
fix-maven-plugin.patch
Normal file
@ -0,0 +1,10 @@
|
||||
--- src/build.xml.orig 2013-09-15 17:37:59.398986270 +0100
|
||||
+++ src/build.xml 2013-09-15 17:38:27.659100029 +0100
|
||||
@@ -102,6 +102,7 @@
|
||||
</zipfileset>
|
||||
<keep pattern="com.tonicsystems.jarjar.Main"/>
|
||||
<keep pattern="com.tonicsystems.jarjar.JarJarTask"/>
|
||||
+ <keep pattern="com.tonicsystems.jarjar.JarJarMojo"/>
|
||||
<rule pattern="com.tonicsystems.jarjar.util.**" result="com.tonicsystems.jarjar.ext_util.@1"/>
|
||||
<rule pattern="org.objectweb.asm.**" result="com.tonicsystems.jarjar.asm.@1"/>
|
||||
<manifest>
|
||||
BIN
jarjar-src-1.4.zip
Normal file
BIN
jarjar-src-1.4.zip
Normal file
Binary file not shown.
25
jarjar-util.pom
Normal file
25
jarjar-util.pom
Normal file
@ -0,0 +1,25 @@
|
||||
<project>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>tonic</groupId>
|
||||
<artifactId>jarjar-util</artifactId>
|
||||
<version>1.4</version>
|
||||
<distributionManagement>
|
||||
<relocation>
|
||||
<groupId>com.tonicsystems</groupId>
|
||||
<artifactId>jarjar-util</artifactId>
|
||||
<version>1.4</version>
|
||||
</relocation>
|
||||
</distributionManagement>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.ow2.asm</groupId>
|
||||
<artifactId>asm</artifactId>
|
||||
<version>5.0.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.ow2.asm</groupId>
|
||||
<artifactId>asm-util</artifactId>
|
||||
<version>5.0.3</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
25
jarjar.pom
Normal file
25
jarjar.pom
Normal file
@ -0,0 +1,25 @@
|
||||
<project>
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<groupId>tonic</groupId>
|
||||
<artifactId>jarjar</artifactId>
|
||||
<version>1.4</version>
|
||||
<distributionManagement>
|
||||
<relocation>
|
||||
<groupId>com.tonicsystems</groupId>
|
||||
<artifactId>jarjar</artifactId>
|
||||
<version>1.4</version>
|
||||
</relocation>
|
||||
</distributionManagement>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.ow2.asm</groupId>
|
||||
<artifactId>asm</artifactId>
|
||||
<version>5.0.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.ow2.asm</groupId>
|
||||
<artifactId>asm-util</artifactId>
|
||||
<version>5.0.3</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
</project>
|
||||
82
jarjar.spec
Normal file
82
jarjar.spec
Normal file
@ -0,0 +1,82 @@
|
||||
Name: jarjar
|
||||
Version: 1.4
|
||||
Release: 23
|
||||
Summary: A utility that makes it easy to repackage Java libraries and embed them into your own distribution
|
||||
License: ASL 2.0
|
||||
URL: https://code.google.com/archive/p/jarjar/
|
||||
Source0: https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/jarjar/jarjar-src-1.4.zip
|
||||
# Pom file for jarjar maven project
|
||||
Source1: jarjar.pom
|
||||
# Pom file for jarjar-util maven project
|
||||
Source2: jarjar-util.pom
|
||||
# Add JarJarMojo for fixed build error
|
||||
Patch0000: fix-maven-plugin.patch
|
||||
# Remove asm in jarjar
|
||||
Patch0001: do-not-embed-asm.patch
|
||||
# Update asm4 to asm6
|
||||
Patch0002: port-to-asm6.patch
|
||||
BuildRequires: ant ant-junit objectweb-asm javapackages-local maven
|
||||
Requires: objectweb-asm javapackages-tools
|
||||
BuildArch: noarch
|
||||
|
||||
%description
|
||||
jarjar (Jar Jar Links) is a utility that makes it easy to repackage Java libraries and embed them
|
||||
into your own distribution.
|
||||
|
||||
%package maven-plugin
|
||||
Summary: Jarjar maven plugin
|
||||
Requires: maven jarjar = %{version}-%{release}
|
||||
|
||||
%description maven-plugin
|
||||
jarjar (Jar Jar Links) is a utility that makes it easy to repackage Java libraries and embed them
|
||||
into your own distribution.
|
||||
|
||||
%package help
|
||||
Summary: Documents for jarjar
|
||||
Provides: jarjar-javadoc = %{version}-%{release}
|
||||
Obsoletes: jarjar-javadoc < %{version}-%{release}
|
||||
|
||||
%description help
|
||||
The jarjar package contains related documents.
|
||||
|
||||
%prep
|
||||
%autosetup -n jarjar-%{version} -p1
|
||||
rm -f lib/*.jar
|
||||
%mvn_package :jarjar-plugin jarjar-maven-plugin
|
||||
echo "jarjar/jarjar objectweb-asm/asm objectweb-asm/asm-commons" > jarjar.ant
|
||||
|
||||
%build
|
||||
cd lib
|
||||
ln -sf $(build-classpath objectweb-asm/asm) asm-4.0.jar
|
||||
ln -sf $(build-classpath objectweb-asm/asm-commons) asm-commons-4.0.jar
|
||||
ln -sf $(build-classpath maven/maven-plugin-api) maven-plugin-api.jar
|
||||
cd -
|
||||
export CLASSPATH=$(build-classpath ant)
|
||||
ant jar jar-util javadoc mojo test
|
||||
sed -i -e s/@VERSION@/%{version}/g maven/pom.xml
|
||||
%mvn_artifact %{SOURCE1} dist/jarjar-%{version}.jar
|
||||
%mvn_artifact %{SOURCE2} dist/jarjar-util-%{version}.jar
|
||||
%mvn_artifact maven/pom.xml dist/jarjar-plugin-%{version}.jar
|
||||
%mvn_alias tonic:jarjar jarjar:jarjar com.tonicsystems:jarjar com.googlecode.jarjar:jarjar org.gradle.jarjar:jarjar
|
||||
%mvn_alias tonic:jarjar-util jarjar:jarjar-util com.tonicsystems:jarjar-util
|
||||
%mvn_alias com.tonicsystems.jarjar:jarjar-plugin jarjar:jarjar-plugin tonic:jarjar-plugin com.tonicsystems:jarjar-plugin
|
||||
|
||||
%install
|
||||
%mvn_install -J dist/javadoc
|
||||
%jpackage_script com.tonicsystems.jarjar.Main "" "" jarjar/jarjar:objectweb-asm/asm:objectweb-asm/asm-commons jarjar true
|
||||
install -m 644 -D jarjar.ant %{buildroot}%{_sysconfdir}/ant.d/jarjar
|
||||
|
||||
%files -f .mfiles
|
||||
%doc COPYING
|
||||
%{_bindir}/jarjar
|
||||
%{_sysconfdir}/ant.d/jarjar
|
||||
%dir %{_javadir}/jarjar
|
||||
|
||||
%files maven-plugin -f .mfiles-jarjar-maven-plugin
|
||||
%doc COPYING
|
||||
|
||||
%files help -f .mfiles-javadoc
|
||||
|
||||
%changelog
|
||||
* Wed Mar 4 2020 Ling Yang <lingyang2@huawei.com> - 1.4-23
|
||||
- Package Init
|
||||
147
port-to-asm6.patch
Normal file
147
port-to-asm6.patch
Normal file
@ -0,0 +1,147 @@
|
||||
From f3be10509b9ae73ee97bee82cb6150b98d4a4595 Mon Sep 17 00:00:00 2001
|
||||
From: Mikolaj Izdebski <mizdebsk@redhat.com>
|
||||
Date: Mon, 18 Sep 2017 09:48:46 +0200
|
||||
Subject: [PATCH] Port to ASM 6
|
||||
|
||||
---
|
||||
src/main/com/tonicsystems/jarjar/DepFindVisitor.java | 2 +-
|
||||
src/main/com/tonicsystems/jarjar/EmptyClassVisitor.java | 8 ++++----
|
||||
src/main/com/tonicsystems/jarjar/KeepProcessor.java | 2 +-
|
||||
src/main/com/tonicsystems/jarjar/StringReader.java | 8 ++++----
|
||||
src/main/com/tonicsystems/jarjar/util/GetNameClassWriter.java | 2 +-
|
||||
.../com/tonicsystems/jarjar/util/RemappingClassTransformer.java | 4 ++--
|
||||
6 files changed, 13 insertions(+), 13 deletions(-)
|
||||
|
||||
diff --git a/src/main/com/tonicsystems/jarjar/DepFindVisitor.java b/src/main/com/tonicsystems/jarjar/DepFindVisitor.java
|
||||
index 9d6611e..bad909e 100644
|
||||
--- a/src/main/com/tonicsystems/jarjar/DepFindVisitor.java
|
||||
+++ b/src/main/com/tonicsystems/jarjar/DepFindVisitor.java
|
||||
@@ -25,7 +25,7 @@ import org.objectweb.asm.*;
|
||||
import org.objectweb.asm.Type;
|
||||
import org.objectweb.asm.commons.*;
|
||||
|
||||
-class DepFindVisitor extends RemappingClassAdapter
|
||||
+class DepFindVisitor extends ClassRemapper
|
||||
{
|
||||
public DepFindVisitor(Map<String, String> classes, String source, DepHandler handler) throws IOException {
|
||||
super(null, new DepFindRemapper(classes, source, handler));
|
||||
diff --git a/src/main/com/tonicsystems/jarjar/EmptyClassVisitor.java b/src/main/com/tonicsystems/jarjar/EmptyClassVisitor.java
|
||||
index 348e03d..7a758fe 100644
|
||||
--- a/src/main/com/tonicsystems/jarjar/EmptyClassVisitor.java
|
||||
+++ b/src/main/com/tonicsystems/jarjar/EmptyClassVisitor.java
|
||||
@@ -28,23 +28,23 @@ import org.objectweb.asm.Opcodes;
|
||||
public class EmptyClassVisitor extends ClassVisitor {
|
||||
|
||||
public EmptyClassVisitor() {
|
||||
- super(Opcodes.ASM4);
|
||||
+ super(Opcodes.ASM6);
|
||||
}
|
||||
|
||||
@Override
|
||||
public MethodVisitor visitMethod(int access, String name, String desc,
|
||||
String signature, String[] exceptions) {
|
||||
- return new MethodVisitor(Opcodes.ASM4) {};
|
||||
+ return new MethodVisitor(Opcodes.ASM6) {};
|
||||
}
|
||||
|
||||
@Override
|
||||
public AnnotationVisitor visitAnnotation(String desc, boolean visible) {
|
||||
- return new AnnotationVisitor(Opcodes.ASM4) {};
|
||||
+ return new AnnotationVisitor(Opcodes.ASM6) {};
|
||||
}
|
||||
|
||||
@Override
|
||||
public FieldVisitor visitField(int access, String name, String desc, String signature, Object value) {
|
||||
- return new FieldVisitor(Opcodes.ASM4) {};
|
||||
+ return new FieldVisitor(Opcodes.ASM6) {};
|
||||
}
|
||||
|
||||
}
|
||||
diff --git a/src/main/com/tonicsystems/jarjar/KeepProcessor.java b/src/main/com/tonicsystems/jarjar/KeepProcessor.java
|
||||
index 0176b84..3ed4636 100644
|
||||
--- a/src/main/com/tonicsystems/jarjar/KeepProcessor.java
|
||||
+++ b/src/main/com/tonicsystems/jarjar/KeepProcessor.java
|
||||
@@ -26,7 +26,7 @@ import org.objectweb.asm.commons.*;
|
||||
// TODO: this can probably be refactored into JarClassVisitor, etc.
|
||||
class KeepProcessor extends Remapper implements JarProcessor
|
||||
{
|
||||
- private final ClassVisitor cv = new RemappingClassAdapter(new EmptyClassVisitor(), this);
|
||||
+ private final ClassVisitor cv = new ClassRemapper(new EmptyClassVisitor(), this);
|
||||
private final List<Wildcard> wildcards;
|
||||
private final List<String> roots = new ArrayList<String>();
|
||||
private final Map<String, Set<String>> depend = new HashMap<String, Set<String>>();
|
||||
diff --git a/src/main/com/tonicsystems/jarjar/StringReader.java b/src/main/com/tonicsystems/jarjar/StringReader.java
|
||||
index ba7bb29..5bb719c 100644
|
||||
--- a/src/main/com/tonicsystems/jarjar/StringReader.java
|
||||
+++ b/src/main/com/tonicsystems/jarjar/StringReader.java
|
||||
@@ -24,7 +24,7 @@ abstract class StringReader extends ClassVisitor
|
||||
private String className;
|
||||
|
||||
public StringReader() {
|
||||
- super(Opcodes.ASM4);
|
||||
+ super(Opcodes.ASM6);
|
||||
}
|
||||
|
||||
abstract public void visitString(String className, String value, int line);
|
||||
@@ -42,7 +42,7 @@ abstract class StringReader extends ClassVisitor
|
||||
|
||||
public FieldVisitor visitField(int access, String name, String desc, String signature, Object value) {
|
||||
handleObject(value);
|
||||
- return new FieldVisitor(Opcodes.ASM4){
|
||||
+ return new FieldVisitor(Opcodes.ASM6){
|
||||
@Override
|
||||
public AnnotationVisitor visitAnnotation(String desc, boolean visible) {
|
||||
return StringReader.this.visitAnnotation(desc, visible);
|
||||
@@ -52,7 +52,7 @@ abstract class StringReader extends ClassVisitor
|
||||
|
||||
@Override
|
||||
public AnnotationVisitor visitAnnotation(String desc, boolean visible) {
|
||||
- return new AnnotationVisitor(Opcodes.ASM4) {
|
||||
+ return new AnnotationVisitor(Opcodes.ASM6) {
|
||||
@Override
|
||||
public void visit(String name, Object value) {
|
||||
handleObject(value);
|
||||
@@ -71,7 +71,7 @@ abstract class StringReader extends ClassVisitor
|
||||
@Override
|
||||
public MethodVisitor visitMethod(int access, String name, String desc,
|
||||
String signature, String[] exceptions) {
|
||||
- MethodVisitor mv = new MethodVisitor(Opcodes.ASM4){
|
||||
+ MethodVisitor mv = new MethodVisitor(Opcodes.ASM6){
|
||||
@Override
|
||||
public void visitLdcInsn(Object cst) {
|
||||
handleObject(cst);
|
||||
diff --git a/src/main/com/tonicsystems/jarjar/util/GetNameClassWriter.java b/src/main/com/tonicsystems/jarjar/util/GetNameClassWriter.java
|
||||
index bbb8590..966ac82 100644
|
||||
--- a/src/main/com/tonicsystems/jarjar/util/GetNameClassWriter.java
|
||||
+++ b/src/main/com/tonicsystems/jarjar/util/GetNameClassWriter.java
|
||||
@@ -25,7 +25,7 @@ public class GetNameClassWriter extends ClassVisitor
|
||||
private String className;
|
||||
|
||||
public GetNameClassWriter(int flags) {
|
||||
- super(Opcodes.ASM4,new ClassWriter(flags));
|
||||
+ super(Opcodes.ASM6,new ClassWriter(flags));
|
||||
}
|
||||
|
||||
public void visit(int version, int access, String name, String signature, String superName, String[] interfaces) {
|
||||
diff --git a/src/main/com/tonicsystems/jarjar/util/RemappingClassTransformer.java b/src/main/com/tonicsystems/jarjar/util/RemappingClassTransformer.java
|
||||
index fd1b9d7..9c1d4c9 100644
|
||||
--- a/src/main/com/tonicsystems/jarjar/util/RemappingClassTransformer.java
|
||||
+++ b/src/main/com/tonicsystems/jarjar/util/RemappingClassTransformer.java
|
||||
@@ -17,12 +17,12 @@
|
||||
package com.tonicsystems.jarjar.util;
|
||||
|
||||
import org.objectweb.asm.ClassVisitor;
|
||||
+import org.objectweb.asm.commons.ClassRemapper;
|
||||
import org.objectweb.asm.commons.Remapper;
|
||||
-import org.objectweb.asm.commons.RemappingClassAdapter;
|
||||
|
||||
import com.tonicsystems.jarjar.EmptyClassVisitor;
|
||||
|
||||
-public class RemappingClassTransformer extends RemappingClassAdapter
|
||||
+public class RemappingClassTransformer extends ClassRemapper
|
||||
{
|
||||
public RemappingClassTransformer(Remapper pr) {
|
||||
super(new EmptyClassVisitor(), pr);
|
||||
--
|
||||
2.13.5
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user