Compare commits
15 commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e4c6fef5c9 | ||
|
|
029cc40cd9 | ||
|
|
38a9524bcc | ||
|
|
83ce04b650 | ||
|
|
afbe812d95 | ||
|
|
c60515c87c | ||
|
|
666550f9c9 | ||
|
|
0fbc5d1d5c | ||
|
|
fda3b3d5e6 | ||
|
|
d63f93c8d3 | ||
|
|
6c8b16d150 | ||
|
|
2cafc5ab61 | ||
|
|
8b7f5e040e | ||
|
|
8061ac7bb1 | ||
|
|
47e433a6b8 |
13 changed files with 480 additions and 0 deletions
6
.gitignore
vendored
Normal file
6
.gitignore
vendored
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
/java-runtime-decompiler-2.0.tar.gz
|
||||
/java-runtime-decompiler-3.0.tar.gz
|
||||
/java-runtime-decompiler-4.0.tar.gz
|
||||
/java-runtime-decompiler-5.0.beta2.tar.gz
|
||||
/java-runtime-decompiler-5.0.rc1.tar.gz
|
||||
/java-runtime-decompiler-5.1.tar.gz
|
||||
16
excludeTrasnitiveTools.patch
Normal file
16
excludeTrasnitiveTools.patch
Normal file
|
|
@ -0,0 +1,16 @@
|
|||
--- runtime-decompiler/pom.xml
|
||||
+++ runtime-decompiler/pom.xml
|
||||
@@ -163,6 +163,12 @@
|
||||
<artifactId>byteman-install</artifactId>
|
||||
<version>4.0.15</version>
|
||||
<type>jar</type>
|
||||
+ <exclusions>
|
||||
+ <exclusion>
|
||||
+ <groupId>com.sun</groupId>
|
||||
+ <artifactId>tools</artifactId>
|
||||
+ </exclusion>
|
||||
+ </exclusions>
|
||||
</dependency>
|
||||
|
||||
<!-- For tests -->
|
||||
|
||||
19
fixDoclint.patch
Normal file
19
fixDoclint.patch
Normal file
|
|
@ -0,0 +1,19 @@
|
|||
diff --git a/runtime-decompiler/src/main/java/org/jrd/frontend/MainFrame/MainFrameView.java b/runtime-decompiler/src/main/java/org/jrd/frontend/MainFrame/MainFrameView.java
|
||||
index 86f9a87..18dce1a 100644
|
||||
--- runtime-decompiler/src/main/java/org/jrd/frontend/MainFrame/MainFrameView.java
|
||||
+++ runtime-decompiler/src/main/java/org/jrd/frontend/MainFrame/MainFrameView.java
|
||||
@@ -174,11 +174,11 @@ public class MainFrameView {
|
||||
welcomeJTextArea = new JTextArea(9, 40);
|
||||
welcomeJTextArea.setText("Welcome to Java-Runtime-Decompiler\n" +
|
||||
"\n" +
|
||||
- "Before using the app, the Decompiler Agent's path needs to be selected in 'Configure → Decompiler Agent'.\n" +
|
||||
+ "Before using the app, the Decompiler Agent's path needs to be selected in 'Configure -> Decompiler Agent'.\n" +
|
||||
"It's a built-in project and can usually be found at '"+ ((isPortable())?"./libs/":"./decompiler_agent/target/") +"decompiler-agent-*.jar'.\n" +
|
||||
"\n" +
|
||||
"Internal javap decompiling tools are available by default.\n" +
|
||||
- "You can also download an external decompiler, e.g. via 'mvn clean install -PdownloadPlugins', and set it up in 'Configure → Plugins'.\n" +
|
||||
+ "You can also download an external decompiler, e.g. via 'mvn clean install -PdownloadPlugins', and set it up in 'Configure -> Plugins'.\n" +
|
||||
"Currently supported decompilers are: Fernflower, Procyon.\n");
|
||||
welcomeJTextArea.setFont(new Font(welcomeJTextArea.getFont().getFontName(), welcomeJTextArea.getFont().getStyle(), 20));
|
||||
welcomeJTextArea.setLineWrap(true);
|
||||
|
||||
86
java-runtime-decompiler
Normal file
86
java-runtime-decompiler
Normal file
|
|
@ -0,0 +1,86 @@
|
|||
#!/usr/bin/bash
|
||||
|
||||
# java runtime decompiler launch script
|
||||
|
||||
# JPackage Project <http://www.jpackage.org/>
|
||||
# Source functions library
|
||||
|
||||
. /usr/share/java-utils/java-functions
|
||||
|
||||
# identify directory tree
|
||||
JRD=`basename $0`
|
||||
CONF_HOME=$XDG_CONFIG_HOME
|
||||
|
||||
|
||||
if [ "$CONF_HOME" = "" ] ; then
|
||||
CONF_HOME=$HOME/.config/$JRD
|
||||
|
||||
else
|
||||
CONF_HOME=$CONF_HOME/$JRD
|
||||
|
||||
fi
|
||||
|
||||
LOG_DIR=$CONF_HOME/logs
|
||||
|
||||
CONF_DIR=$CONF_HOME/conf
|
||||
|
||||
# create directory tree
|
||||
PLUGIN_HOME=$CONF_HOME/plugins
|
||||
|
||||
mkdir -p $LOG_DIR
|
||||
|
||||
mkdir -p $CONF_DIR
|
||||
|
||||
mkdir -p $PLUGIN_HOME
|
||||
|
||||
: ${MAIN_CLASS:=org.jrd.backend.data.Main}
|
||||
|
||||
# set java and jvm arguments
|
||||
export _prefer_jre=false
|
||||
_set_java_home
|
||||
set_jvm
|
||||
|
||||
# all dependencies must be on classpath
|
||||
set_classpath java-runtime-decompiler byteman google-gson classpathless-compiler
|
||||
CLASSPATH=$CLASSPATH:${JAVA_HOME}/lib/tools.jar
|
||||
|
||||
# set path to agent automatically
|
||||
AGENT="/usr/share/java/java-runtime-decompiler/decompiler-agent.jar"
|
||||
CONFIG_FILE=$CONF_DIR/config.cfg
|
||||
AGENT_PREFIX="AGENT_PATH==="
|
||||
AGENT_STRING=$AGENT_PREFIX$AGENT
|
||||
|
||||
# copy json wrappers information to home so the users can edit
|
||||
CP_FILES="$(ls /etc/$JRD/plugins/*.json)"
|
||||
for cpfile in $CP_FILES; do
|
||||
FILE_NAME="$(basename -- $cpfile)"
|
||||
if [ ! -e "$PLUGIN_HOME/$FILE_NAME" ]
|
||||
then
|
||||
cp $cpfile $PLUGIN_HOME
|
||||
else
|
||||
echo "Configuration files were not copied for $FILE_NAME - the existing configuration would be overwritten." >&2
|
||||
fi
|
||||
done
|
||||
|
||||
# create config file and add agent default path
|
||||
touch $CONFIG_FILE
|
||||
|
||||
if [ -e $AGENT ]
|
||||
then
|
||||
if grep -Fxq $AGENT_STRING $CONFIG_FILE
|
||||
then
|
||||
echo "Default agent path is already set in $CONFIG_FILE. Skipping agent path setting." >&2
|
||||
elif grep -rq $AGENT_PREFIX $CONFIG_FILE
|
||||
then
|
||||
RESULT_OF_GREP="$(grep -rq $AGENT_PREFIX $CONFIG_FILE)"
|
||||
echo "Agent path is already set in $CONFIG_FILE as ${RESULT_OF_GREP}. Skipping agent path setting." >&2
|
||||
else
|
||||
echo $AGENT_STRING >> $CONFIG_FILE
|
||||
|
||||
fi
|
||||
else
|
||||
echo "Agent was not found and agent path was not set correctly. This has to be done manually in the decompiler GUI, or set AGENT_PATH===path_to_agent_jar in the configuration file: $CONFIG_FILE" >&2
|
||||
fi
|
||||
|
||||
export FLAGS="$FLAGS -Djdk.attach.allowAttachSelf=true"
|
||||
run "$@"
|
||||
182
java-runtime-decompiler.spec
Normal file
182
java-runtime-decompiler.spec
Normal file
|
|
@ -0,0 +1,182 @@
|
|||
Summary: Application for extraction and decompilation of JVM byte code
|
||||
Name: java-runtime-decompiler
|
||||
Version: 5.1
|
||||
Release: 1%{?dist}
|
||||
License: GPLv3
|
||||
URL: https://github.com/pmikova/java-runtime-decompiler
|
||||
Source0: https://github.com/pmikova/%{name}/archive/%{name}-%{version}.tar.gz
|
||||
Source1: java-runtime-decompiler
|
||||
Source3: jrd.desktop
|
||||
Patch0: remove_rsyntaxtextarea.patch
|
||||
Patch1: systemFernflower.patch
|
||||
Patch2: systemProcyon.patch
|
||||
Patch4: systemCfr.patch
|
||||
Patch5: systemJasm.patch
|
||||
Patch6: systemJcoder.patch
|
||||
#to fix issue, when byteman requires tools.jar
|
||||
Patch7: excludeTrasnitiveTools.patch
|
||||
|
||||
|
||||
BuildArch: noarch
|
||||
BuildRequires: maven-local
|
||||
BuildRequires: byteman
|
||||
BuildRequires: junit
|
||||
BuildRequires: ant-junit
|
||||
BuildRequires: maven-surefire-provider-junit
|
||||
BuildRequires: maven-surefire
|
||||
BuildRequires: maven-surefire-plugin
|
||||
BuildRequires: java-11-openjdk-devel
|
||||
BuildRequires: google-gson
|
||||
BuildRequires: desktop-file-utils
|
||||
BuildRequires: classpathless-compiler
|
||||
Requires: java-11-openjdk-headless
|
||||
Requires: classpathless-compiler
|
||||
Requires: fernflower
|
||||
Requires: procyon-decompiler
|
||||
Requires: CFR
|
||||
Requires: openjdk-asmtools
|
||||
|
||||
%description
|
||||
This application can access JVM memory at runtime,
|
||||
extract byte code from the JVM and decompile it.
|
||||
|
||||
%package javadoc
|
||||
Summary: Javadoc for %{name}
|
||||
Requires: %{name} = %{version}-%{release}
|
||||
|
||||
%description javadoc
|
||||
This package contains the API documentation for %{name}.
|
||||
|
||||
%prep
|
||||
%setup -q -n %{name}-%{name}-%{version}
|
||||
%patch0 -p0
|
||||
%patch1 -p0
|
||||
%patch2 -p0
|
||||
%patch4 -p0
|
||||
%patch5 -p0
|
||||
%patch6 -p0
|
||||
%patch7 -p0
|
||||
|
||||
%build
|
||||
pushd runtime-decompiler
|
||||
%pom_remove_plugin :maven-jar-plugin
|
||||
popd
|
||||
export JAVA_TOOL_OPTIONS="-Dadditionalparam=-Xdoclint:none -DadditionalJOption=-Xdoclint:none"
|
||||
export JAVA_HOME=/usr/lib/jvm/java-11-openjdk
|
||||
%mvn_build -f
|
||||
$JAVA_HOME/bin/java -cp /usr/share/java/classpathless-compiler/classpathless-compiler.jar:runtime-decompiler/target/runtime-decompiler-%{version}.jar org.jrd.backend.data.Help > %{name}.1
|
||||
|
||||
%install
|
||||
%mvn_install
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_mandir}/man1/
|
||||
install -m 644 %{name}.1 $RPM_BUILD_ROOT%{_mandir}/man1/
|
||||
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_bindir}
|
||||
install -m 755 %{SOURCE1} $RPM_BUILD_ROOT%{_bindir}/
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/
|
||||
cp -r %{_builddir}/%{name}-%{name}-%{version}/runtime-decompiler/src/plugins/ $RPM_BUILD_ROOT%{_sysconfdir}/%{name}/
|
||||
|
||||
install -d -m 755 $RPM_BUILD_ROOT%{_datadir}/applications
|
||||
desktop-file-install --vendor="fedora" \
|
||||
--dir=${RPM_BUILD_ROOT}%{_datadir}/applications %{SOURCE3}
|
||||
|
||||
%files -f .mfiles
|
||||
%attr(755, root, -) %{_bindir}/java-runtime-decompiler
|
||||
%{_mandir}/man1/java-runtime-decompiler.1*
|
||||
# wrappers for decompilers
|
||||
%dir %{_sysconfdir}/%{name}
|
||||
%dir %{_sysconfdir}/%{name}/plugins
|
||||
%config %{_sysconfdir}/%{name}/plugins/FernflowerDecompilerWrapper.java
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/plugins/FernflowerDecompilerWrapper.json
|
||||
%config %{_sysconfdir}/%{name}/plugins/ProcyonDecompilerWrapper.java
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/plugins/ProcyonDecompilerWrapper.json
|
||||
%config %{_sysconfdir}/%{name}/plugins/CfrDecompilerWrapper.java
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/plugins/CfrDecompilerWrapper.json
|
||||
%config %{_sysconfdir}/%{name}/plugins/JasmDecompilerWrapper.java
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/plugins/JasmDecompilerWrapper.json
|
||||
%config %{_sysconfdir}/%{name}/plugins/JcoderDecompilerWrapper.java
|
||||
%config(noreplace) %{_sysconfdir}/%{name}/plugins/JcoderDecompilerWrapper.json
|
||||
%license LICENSE
|
||||
|
||||
%dir %{_datadir}/applications
|
||||
%{_datadir}/applications/fedora-jrd.desktop
|
||||
|
||||
%files javadoc -f .mfiles-javadoc
|
||||
%license LICENSE
|
||||
|
||||
%changelog
|
||||
* Thu Aug 12 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.1-1
|
||||
- bumped to final sources
|
||||
|
||||
* Mon Aug 09 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.rc1-1
|
||||
- adapted manpage
|
||||
|
||||
* Mon Aug 02 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.0.beta2-1
|
||||
- updated to 5.0
|
||||
- removed jdk8 subpkg due to compiler api
|
||||
- added Cfr and asmtools plugins
|
||||
- todo man page
|
||||
|
||||
* Thu Jul 22 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.0-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 4.0-3
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Tue Dec 08 2020 Jiri Vanek <jvanek@redhat.com> - 4.0-2
|
||||
- Added subpackage built by jdk8 to allow looking into jdk8 apps
|
||||
- for some reason, jdk8 vm can not look into jdk11 vm, even if agent is correctly jdk8 version
|
||||
- the config is still share, which is stupid, but I doubt there is another target audeince then me
|
||||
|
||||
* Tue Dec 08 2020 Jiri Vanek <jvanek@redhat.com> - 4.0-1
|
||||
- built by jdk11
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.0-9
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Fri Jul 10 2020 Jiri Vanek <jvanek@redhat.com> - 3.0-8
|
||||
- Rebuilt for JDK-11, see https://fedoraproject.org/wiki/Changes/Java11
|
||||
|
||||
* Tue Mar 17 2020 Jiri Vanek <jvanek@redhat.com> - 3.0-7
|
||||
- aligned rsyntaxtextarea version, fixed javadoc generation
|
||||
|
||||
* Tue Mar 17 2020 Jiri Vanek <jvanek@redhat.com> - 3.0-6
|
||||
- changed jdk8 requirement
|
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 3.0-5
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Tue Aug 27 2019 Jiri Vanek <jvanek@redhat.com> - 3.0-3
|
||||
- all stdouts from customlauncher moved to stderr
|
||||
|
||||
* Mon Aug 26 2019 Jiri Vanek <jvanek@redhat.com> - 3.0-0
|
||||
- moved to usptream version 3.0
|
||||
- adjusted configs, removed lambda patch
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-7
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-6
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Thu Jan 17 2019 Jiri Vanek <jvanek@redhat.com> - 2.0-5
|
||||
- improved Patch3, includeLambdas.patch to sort the lamdas t the bottom
|
||||
|
||||
* Thu Jan 17 2019 Jiri Vanek <jvanek@redhat.com> - 2.0-4
|
||||
- added depndence of procyon decompiler (currenlty under review
|
||||
- added and applied Patch2, systemProcyon.patch to enable system procyon out of thebox
|
||||
- added and applied Patch3, includeLambdas.patch to at least list lamdas untill fixed in upstream
|
||||
|
||||
* Thu Jan 10 2019 Jiri Vanek <jvanek@redhat.com> - 2.0-3
|
||||
- added depndence of fernflower decompiler
|
||||
- added and applied Patch1, systemFernflower.patch to enable system fernflower
|
||||
|
||||
* Wed Nov 28 2018 Petra Mikova <petra.alice.mikova@gmail.com> - 2.0-2
|
||||
- fixed changelog
|
||||
|
||||
* Mon Nov 19 2018 Petra Mikova <petra.alice.mikova@gmail.com> - 2.0-1
|
||||
- fixed issues listed in review (rhbz#1636019)
|
||||
- added installation of desktop file
|
||||
|
||||
* Wed Jun 06 2018 Petra Mikova <petra.alice.mikova@gmail.com> - 1.1-1
|
||||
- initial commit
|
||||
8
jrd.desktop
Normal file
8
jrd.desktop
Normal file
|
|
@ -0,0 +1,8 @@
|
|||
[Desktop Entry]
|
||||
Encoding=UTF-8
|
||||
Type=Application
|
||||
Categories=Development;Profiling;Java;
|
||||
Version=1.0
|
||||
Name=Java Runtime Decompiler
|
||||
Exec=java-runtime-decompiler
|
||||
Terminal=false
|
||||
88
remove_rsyntaxtextarea.patch
Normal file
88
remove_rsyntaxtextarea.patch
Normal file
|
|
@ -0,0 +1,88 @@
|
|||
diff --git a/runtime-decompiler/pom.xml b/runtime-decompiler/pom.xml
|
||||
index 26a416e..e6e2425 100644
|
||||
--- runtime-decompiler/pom.xml
|
||||
+++ runtime-decompiler/pom.xml
|
||||
@@ -157,11 +157,6 @@
|
||||
<artifactId>directories</artifactId>
|
||||
<version>10</version>
|
||||
</dependency>-->
|
||||
- <dependency>
|
||||
- <groupId>com.fifesoft</groupId>
|
||||
- <artifactId>rsyntaxtextarea</artifactId>
|
||||
- <version>3.1.2</version>
|
||||
- </dependency>
|
||||
<dependency>
|
||||
<groupId>org.jboss.byteman</groupId>
|
||||
<artifactId>byteman-install</artifactId>
|
||||
diff --git a/runtime-decompiler/src/main/java/org/jrd/frontend/BytecodeDecompilerView.java b/runtime-decompiler/src/main/java/org/jrd/frontend/BytecodeDecompilerView.java
|
||||
index 9c19e2c..8d17775 100644
|
||||
--- runtime-decompiler/src/main/java/org/jrd/frontend/MainFrame/BytecodeDecompilerView.java
|
||||
+++ runtime-decompiler/src/main/java/org/jrd/frontend/MainFrame/BytecodeDecompilerView.java
|
||||
@@ -4,11 +4,11 @@ import org.fife.ui.hex.event.HexSearchActionListener;
|
||||
import org.fife.ui.hex.event.HexSearchDocumentListener;
|
||||
import org.fife.ui.hex.swing.HexEditor;
|
||||
import org.fife.ui.hex.swing.HexSearch;
|
||||
-import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea;
|
||||
-import org.fife.ui.rsyntaxtextarea.SyntaxConstants;
|
||||
-import org.fife.ui.rtextarea.RTextScrollPane;
|
||||
-import org.fife.ui.rtextarea.SearchContext;
|
||||
-import org.fife.ui.rtextarea.SearchEngine;
|
||||
+//import org.fife.ui.rsyntaxtextarea.RSyntaxTextArea;
|
||||
+//import org.fife.ui.rsyntaxtextarea.SyntaxConstants;
|
||||
+//import org.fife.ui.rtextarea.RTextScrollPane;
|
||||
+//import org.fife.ui.rtextarea.SearchContext;
|
||||
+//import org.fife.ui.rtextarea.SearchEngine;
|
||||
import org.jrd.backend.core.OutputController;
|
||||
import org.jrd.backend.decompiling.DecompilerWrapperInformation;
|
||||
|
||||
@@ -52,8 +52,8 @@ public class BytecodeDecompilerView {
|
||||
private JPanel rightBin;
|
||||
private JScrollPane leftScrollPanel;
|
||||
private JList<String> filteredClassesJlist;
|
||||
- private RTextScrollPane bytecodeScrollPane;
|
||||
- private RSyntaxTextArea bytecodeSyntaxTextArea;
|
||||
+ private JScrollPane bytecodeScrollPane;
|
||||
+ private JTextArea bytecodeSyntaxTextArea;
|
||||
private HexEditor hex;
|
||||
private JPanel hexControls;
|
||||
private String lastDecompiledClass = "";
|
||||
@@ -198,10 +198,10 @@ public class BytecodeDecompilerView {
|
||||
}
|
||||
});
|
||||
|
||||
- bytecodeSyntaxTextArea = new RSyntaxTextArea();
|
||||
- bytecodeSyntaxTextArea.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_JAVA);
|
||||
- bytecodeSyntaxTextArea.setCodeFoldingEnabled(true);
|
||||
- bytecodeScrollPane = new RTextScrollPane(bytecodeSyntaxTextArea);
|
||||
+ bytecodeSyntaxTextArea = new JTextArea();
|
||||
+ //bytecodeSyntaxTextArea.setSyntaxEditingStyle(SyntaxConstants.SYNTAX_STYLE_JAVA);
|
||||
+ //bytecodeSyntaxTextArea.setCodeFoldingEnabled(true);
|
||||
+ bytecodeScrollPane = new JScrollPane(bytecodeSyntaxTextArea);
|
||||
|
||||
hex = new HexEditor();
|
||||
hexControls = new JPanel();
|
||||
@@ -410,15 +410,15 @@ public class BytecodeDecompilerView {
|
||||
* Search string in decompiled code
|
||||
*/
|
||||
private void searchCode() {
|
||||
- SearchContext context = new SearchContext();
|
||||
- String match = searchCodeField.getText();
|
||||
- context.setSearchFor(match);
|
||||
- context.setWholeWord(false);
|
||||
- SearchEngine.markAll(bytecodeSyntaxTextArea, context);
|
||||
- int line = SearchEngine.getNextMatchPos(match, bytecodeSyntaxTextArea.getText(), true, true, false);
|
||||
- if (line >= 0) {
|
||||
- bytecodeSyntaxTextArea.setCaretPosition(line);
|
||||
- }
|
||||
+// SearchContext context = new SearchContext();
|
||||
+// String match = searchCodeField.getText();
|
||||
+// context.setSearchFor(match);
|
||||
+// context.setWholeWord(false);
|
||||
+// SearchEngine.markAll(bytecodeSyntaxTextArea, context);
|
||||
+// int line = SearchEngine.getNextMatchPos(match, bytecodeSyntaxTextArea.getText(), true, true, false);
|
||||
+// if (line >= 0) {
|
||||
+// bytecodeSyntaxTextArea.setCaretPosition(line);
|
||||
+// }
|
||||
}
|
||||
|
||||
private void classWorker(String name) {
|
||||
1
sources
Normal file
1
sources
Normal file
|
|
@ -0,0 +1 @@
|
|||
SHA512 (java-runtime-decompiler-5.1.tar.gz) = 0a1e644696c7fc0595a9b4ca05ef1f392a78e5a6bb6e9631ede8a93776740ae8cf65ced0cfaacd7890985ee659e41947bcf17a87d7bc3ba5958ae84a943b64d9
|
||||
14
systemCfr.patch
Normal file
14
systemCfr.patch
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
--- runtime-decompiler/src/plugins/CfrDecompilerWrapper.json
|
||||
+++ runtime-decompiler/src/plugins/CfrDecompilerWrapper.json
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"Name": "Cfr",
|
||||
- "WrapperURL": "file://${XDG_CONFIG_HOME}/plugins/CfrDecompilerWrapper.java",
|
||||
+ "WrapperURL": "file:/etc/java-runtime-decompiler/plugins/CfrDecompilerWrapper.java",
|
||||
"DependencyURL": [
|
||||
- "file://${HOME}/.m2/repository/org/benf/cfr/0.151/cfr-0.151.jar"
|
||||
+ "file:/usr/share/java/CFR/cfr.jar"
|
||||
],
|
||||
"DecompilerDownloadURL": "https://www.benf.org/other/cfr/faq.html"
|
||||
}
|
||||
|
||||
15
systemFernflower.patch
Normal file
15
systemFernflower.patch
Normal file
|
|
@ -0,0 +1,15 @@
|
|||
--- runtime-decompiler/src/plugins/FernflowerDecompilerWrapper.json
|
||||
+++ runtime-decompiler/src/plugins/FernflowerDecompilerWrapper.json
|
||||
@@ -1,9 +1,8 @@
|
||||
{
|
||||
"Name": "Fernflower",
|
||||
- "WrapperURL": "file://${XDG_CONFIG_HOME}/plugins/FernflowerDecompilerWrapper.java",
|
||||
+ "WrapperURL": "file:///etc/java-runtime-decompiler/plugins/FernflowerDecompilerWrapper.java",
|
||||
"DependencyURL": [
|
||||
- "file://${HOME}/.m2/repository/org/jboss/windup/decompiler/decompiler-fernflower/5.1.4.Final/decompiler-fernflower-5.1.4.Final.jar",
|
||||
- "file://${HOME}/.m2/repository/org/jboss/windup/decompiler/fernflower/windup-fernflower/1.0.0.20171018/windup-fernflower-1.0.0.20171018.jar"
|
||||
+ "file:///usr/share/java/fernflower.jar"
|
||||
],
|
||||
"DecompilerDownloadURL": "https://github.com/JetBrains/intellij-community/tree/master/plugins/java-decompiler/engine"
|
||||
}
|
||||
|
||||
14
systemJasm.patch
Normal file
14
systemJasm.patch
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
--- runtime-decompiler/src/plugins/JasmDecompilerWrapper.json 2018-11-12 15:25:47.000000000 +0100
|
||||
+++ runtime-decompiler/src/plugins/JasmDecompilerWrapper.json 2019-01-16 12:13:37.317778036 +0100
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"Name": "jasm",
|
||||
- "WrapperURL": "file://${XDG_CONFIG_HOME}/plugins/JasmDecompilerWrapper.java",
|
||||
+ "WrapperURL": "file:/etc/java-runtime-decompiler/plugins/JasmDecompilerWrapper.java",
|
||||
"DependencyURL": [
|
||||
- "file://${HOME}/.m2/repository/org/openjdk/asmtools/asmtools-core/7.0.b10-ea/asmtools-core-7.0.b10-ea.jar"
|
||||
+ "file:/usr/share/java/openjdk-asmtools/asmtools-core.jar"
|
||||
],
|
||||
"DecompilerDownloadURL": "https://github.com/openjdk/asmtools"
|
||||
}
|
||||
|
||||
14
systemJcoder.patch
Normal file
14
systemJcoder.patch
Normal file
|
|
@ -0,0 +1,14 @@
|
|||
--- runtime-decompiler/src/plugins/JcoderDecompilerWrapper.json 2018-11-12 15:25:47.000000000 +0100
|
||||
+++ runtime-decompiler/src/plugins/JcoderDecompilerWrapper.json 2019-01-16 12:13:37.317778036 +0100
|
||||
@@ -1,8 +1,8 @@
|
||||
{
|
||||
"Name": "jcoder",
|
||||
- "WrapperURL": "file://${XDG_CONFIG_HOME}/plugins/JcoderDecompilerWrapper.java",
|
||||
+ "WrapperURL": "file:/etc/java-runtime-decompiler/plugins/JcoderDecompilerWrapper.java",
|
||||
"DependencyURL": [
|
||||
- "file://${HOME}/.m2/repository/org/openjdk/asmtools/7.0.b10-ea/asmtools-core-7.0.b10-ea.jar"
|
||||
+ "file:/usr/share/java/openjdk-asmtools/asmtools-core.jar"
|
||||
],
|
||||
"DecompilerDownloadURL": "https://github.com/openjdk/asmtools"
|
||||
}
|
||||
|
||||
17
systemProcyon.patch
Normal file
17
systemProcyon.patch
Normal file
|
|
@ -0,0 +1,17 @@
|
|||
--- runtime-decompiler/src/plugins/ProcyonDecompilerWrapper.json 2018-11-12 15:25:47.000000000 +0100
|
||||
+++ runtime-decompiler/src/plugins/ProcyonDecompilerWrapper.json 2019-01-16 12:13:37.317778036 +0100
|
||||
@@ -1,9 +1,10 @@
|
||||
{
|
||||
"Name": "Procyon",
|
||||
- "WrapperURL": "file://${XDG_CONFIG_HOME}/plugins/ProcyonDecompilerWrapper.java",
|
||||
+ "WrapperURL": "file:///etc/java-runtime-decompiler/plugins/ProcyonDecompilerWrapper.java",
|
||||
"DependencyURL": [
|
||||
- "file://${HOME}/.m2/repository/org/bitbucket/mstrobel/procyon-core/0.5.36/procyon-core-0.5.36.jar",
|
||||
- "file://${HOME}/.m2/repository/org/bitbucket/mstrobel/procyon-compilertools/0.5.36/procyon-compilertools-0.5.36.jar"
|
||||
+ "/usr/share/java/procyon/procyon-core.jar",
|
||||
+ "/usr/share/java/procyon/procyon-compilertools.jar",
|
||||
+ "/usr/share/java/procyon/procyon-decompiler.jar"
|
||||
],
|
||||
"DecompilerDownloadURL": "https://bitbucket.org/mstrobel/procyon/downloads/"
|
||||
}
|
||||
|
||||
Loading…
Add table
Add a link
Reference in a new issue