Made HTML/4.0 conform; minor updates

git-svn-id: https://svn.code.sf.net/p/jode/code/trunk@1373 379699f6-c40d-0410-875b-85095c16579e
master
hoenicke 22 years ago
parent 66dc0880ab
commit 0c1d7a4b7c
  1. 2
      jode/doc/applet.php
  2. 4
      jode/doc/bluesky.php
  3. 4
      jode/doc/download.php
  4. 2
      jode/doc/faq.php
  5. 4
      jode/doc/footer.inc
  6. 6
      jode/doc/header.inc
  7. 16
      jode/doc/index.php
  8. 6
      jode/doc/license.php
  9. 2
      jode/doc/links.php
  10. 2
      jode/doc/menu.inc
  11. 25
      jode/doc/usage.php

@ -6,7 +6,7 @@
<center> <center>
<applet code="jode/Applet.class" archive="jode-applet.jar" width=540 height=400> <applet code="jode/Applet.class" archive="jode-applet.jar" width=540 height=400>
<param name=pagecolor value="ffffff"> <param name=pagecolor value="ffffff">
<param name=classpath value="http://jode.sourceforge.net/http/www.informatik.uni-oldenburg.de/~mw/plasma.jar"> <param name=classpath value="http://jode.sourceforge.net/plasma.jar">
<param name=class value="PlasmaApplet"> <param name=class value="PlasmaApplet">
<p>Sorry you need a java enabled browser to test a java applet ;-)</p> <p>Sorry you need a java enabled browser to test a java applet ;-)</p>
<p>Don't read the rest, it only contains information about the applet.</p> <p>Don't read the rest, it only contains information about the applet.</p>

@ -29,7 +29,7 @@ method containing very much objects of the same type looks very
ugly. </p> ugly. </p>
<p>My plan is looking at the assignments. If we have locals in <p>My plan is looking at the assignments. If we have locals in
assignments assignments</p>
<pre> <pre>
int l_1 = array.length int l_1 = array.length
String l_2 = object.getName() String l_2 = object.getName()
@ -40,7 +40,7 @@ have assignments:
MenuItem local_1 = new MenuItem("Open"); MenuItem local_1 = new MenuItem("Open");
MenuItem local_2 = new MenuItem("Save"); MenuItem local_2 = new MenuItem("Save");
</pre> </pre>
good names would be <code>miOpen</code> and <code>miSave</code>. </p> <p>good names would be <code>miOpen</code> and <code>miSave</code>. </p>
<p>It is currently possible to assign a <i>(hint name,type)</i> pair <p>It is currently possible to assign a <i>(hint name,type)</i> pair
to a local. If the type matches, the local will be named after to a local. If the type matches, the local will be named after

@ -16,7 +16,7 @@ the swing interface, you have to download swing separately, all other
packages are already included in the archive. </li> packages are already included in the archive. </li>
<li>jode-1.1.jar is for JDK&nbsp;1.2 or better. It should run <li>jode-1.1.jar is for JDK&nbsp;1.2 or better. It should run
without any other package.</li> </ul> </p> without any other package.</li> </ul>
<h1>CVS Repository</h1> <h1>CVS Repository</h1>
@ -35,6 +35,6 @@ the <code>configure.in</code> file resides and run
<pre>aclocal && automake -a && autoconf</pre> <pre>aclocal && automake -a && autoconf</pre>
Afterwards follow the instruction in the INSTALL file. </p> <p>Afterwards follow the instruction in the INSTALL file. </p>
<?php require("footer.inc"); ?> <?php require("footer.inc"); ?>

@ -50,7 +50,7 @@ library even when you don't want to obfuscate it.</p>
is not what you want. This only makes sure the class won't be is not what you want. This only makes sure the class won't be
renamed, it doesn't prevent it from being stripped. Instead you renamed, it doesn't prevent it from being stripped. Instead you
should preserve methods and constructors. The constructor is just a should preserve methods and constructors. The constructor is just a
method with the special name <tt>&lt;init&rt;</tt>. </p> method with the special name <tt>&lt;init&gt;</tt>. </p>
<p> Another common mistake is to omit the type <p> Another common mistake is to omit the type
signature, e.g. to preserve <tt>Class.main</tt> instead of signature, e.g. to preserve <tt>Class.main</tt> instead of

@ -2,8 +2,8 @@
<TR> <TR>
<TD align="center"><SPAN class=footer> <TD align="center"><SPAN class=footer>
All trademarks and copyrights on this page are properties of their respective owners. <br> All trademarks and copyrights on this page are properties of their respective owners. <br>
Last updated on 29-May-2001, Last updated on 29-May-2002,
Copyright &copy; 1998-2001 by Jochen Hoenicke. Copyright &copy; 1998-2002 by Jochen Hoenicke.
Canonic URL is <a class=boldlink href="http://jode.sourceforge.net/">http://jode.sourceforge.net/</a></SPAN> Canonic URL is <a class=boldlink href="http://jode.sourceforge.net/">http://jode.sourceforge.net/</a></SPAN>
</TD> </TD>
</TR> </TR>

@ -21,7 +21,7 @@ function selflink($link) {
function sflink($link) { function sflink($link) {
echo "<a href=\"http://sourceforge.net/$link?group_id=3790\">"; echo "<a href=\"http://sourceforge.net/$link?group_id=3790\">";
} }
?><!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 3.0//EN"> ?><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html> <html>
<head> <head>
<title>Java Optimize and Decompile Environment (JODE)</title> <title>Java Optimize and Decompile Environment (JODE)</title>
@ -40,7 +40,7 @@ body { color:#000000; background-color: #FFFFFF; }
</style> </style>
</head> </head>
<body text=#000000 bgcolor=#FFFFFF> <body text="#000000" bgcolor="#FFFFFF">
<table cellpadding=4 cellspacing=1 width="100%" <table cellpadding=4 cellspacing=1 width="100%"
><tr ><tr
@ -49,7 +49,7 @@ body { color:#000000; background-color: #FFFFFF; }
></td ></td
><td align="right" ><td align="right"
>Powered by <a href="http://sourceforge.net"><img >Powered by <a href="http://sourceforge.net"><img
src="http://sourceforge.net/sflogo.php?group_id=3790&type=1" src="http://sourceforge.net/sflogo.php?group_id=3790&amp;type=1"
border=0 width=88 height=31 alt="SourceForge"></a><br border=0 width=88 height=31 alt="SourceForge"></a><br
>Best viewed with <a >Best viewed with <a
href="http://www.anybrowser.org/campaign/"><img href="http://www.anybrowser.org/campaign/"><img

@ -2,7 +2,10 @@
<P><i>JODE</i> is a java package containing a decompiler and an <P><i>JODE</i> is a java package containing a decompiler and an
optimizer for java. This package is <?php selflink("license") optimizer for java. This package is <?php selflink("license")
?>freely available</a> under the GNU GPL.<p> ?>freely available</a> under the GNU GPL.
<b>New:</b> The bytecode package and the core decompiler is now under
GNU Lesser General Public License, so you can integrate it in your
project.</p>
<P>The decompiler reads in <tt>class</tt> files and produces something <P>The decompiler reads in <tt>class</tt> files and produces something
similar to the original <tt>java</tt> file. Of course this can't be similar to the original <tt>java</tt> file. Of course this can't be
@ -10,7 +13,8 @@ perfect: There is no way to produce the comments or the names of local
variables (except when compiled with debuging) and there are often variables (except when compiled with debuging) and there are often
more ways to write the same thing. However, <i>JODE</i> does its job quite more ways to write the same thing. However, <i>JODE</i> does its job quite
well, so you should give it a try and <? selflink("applet") ?>start the well, so you should give it a try and <? selflink("applet") ?>start the
applet</a>.</P> applet</a>. Jode has support for all constructs of JDK-1.3 including
inner and anonymous classes.</P>
<P>The optimizer transforms <tt>class</tt> files in various ways with <P>The optimizer transforms <tt>class</tt> files in various ways with
can be controlled by a script file. It supports the following can be controlled by a script file. It supports the following
@ -28,12 +32,8 @@ fields</li>
<h2>News</h2> <h2>News</h2>
<ul> <ul>
<li><i>JODE</i> 1.1 is out. With support for javac v8 (jdk 1.3). </li> <li><i>JODE</i> 1.1.1 is out. With support for javac v8 (jdk 1.3). </li>
<li><i>JODE</i> is now hosted by <a href="http://sourceforge.net/">SourceForge</a>.</li> <li>The license changed to LGPL for the bytecode interface and decompiler.</li>
<li>Now long lines are automatically broken.</li>
<li><b>Inner and anonymous</b> classes are automatically decompiled.</li>
<li>The optimizer (aka obfuscator) can be customized via a small
config file</li>
</ul> </ul>
<h2>Known bugs of the decompiler</h2> <h2>Known bugs of the decompiler</h2>

@ -8,6 +8,12 @@ href="http://www.gnu.org/copyleft/gpl.html">GNU General Public
License</a> as published by the Free Software Foundation; either License</a> as published by the Free Software Foundation; either
version 2 of the License, or (at your option) any later version.</p> version 2 of the License, or (at your option) any later version.</p>
<p>You can redistribute some of the packages under the
terms of the of the <a
href="http://www.gnu.org/copyleft/lesser.html">GNU Lesser General
Public License</a> as published by the Free Software Foundation. See
the copyright headers in the source code.</p>
<p>This program is distributed in the hope that it will be useful, <p>This program is distributed in the hope that it will be useful,
but <b>without any warranty</b>; without even the implied warranty of but <b>without any warranty</b>; without even the implied warranty of
<b>merchantability</b> or <b>fitness for a particular purpose</b>. See the <b>merchantability</b> or <b>fitness for a particular purpose</b>. See the

@ -37,7 +37,7 @@ href="http://jedit.standmed.com/plugins/JavaInsight">JavaInsight plugin</a> for
</li> </li>
<li>A great place for developing free software is <li>A great place for developing free software is
<a href="http://sourceforge.net"><img <a href="http://sourceforge.net"><img
src="http://sourceforge.net/sflogo.php?group_id=3790&type=1" src="http://sourceforge.net/sflogo.php?group_id=3790&amp;type=1"
border=0 width=88 height=31 alt="SourceForge"></a> border=0 width=88 height=31 alt="SourceForge"></a>
</li> </li>
</ul> </ul>

@ -13,7 +13,7 @@ $menu =
"Blue Sky" , "selflink", "bluesky"); "Blue Sky" , "selflink", "bluesky");
?> ?>
<table cellspacing=0 cellpadding=3 border=0 bgcolor=#EEEEF8 class="nav"> <table cellspacing=0 cellpadding=3 border=0 bgcolor="#EEEEF8" class="nav">
<tr><td class="nav"> <tr><td class="nav">
<?php <?php
reset($menu); reset($menu);

@ -7,8 +7,7 @@
&nbsp;&nbsp;&nbsp;<a href="#java">Java&nbsp;Interface</a><br> &nbsp;&nbsp;&nbsp;<a href="#java">Java&nbsp;Interface</a><br>
<a href="#optimizer">Obfuscator</a><br> <a href="#optimizer">Obfuscator</a><br>
*/ ?> */ ?>
<a name="decompiler"> <h1><a name="decompiler">Using the Decompiler</a></h1>
<h1>Using the Decompiler</h1></a>
<p>After you have <?php selflink("download") ?>downloaded</a> the jar archive <p>After you have <?php selflink("download") ?>downloaded</a> the jar archive
put it into your <tt>CLASSPATH</tt>. The package put it into your <tt>CLASSPATH</tt>. The package
<tt>swingall.jar</tt> is also needed if you are using JDK 1.1.</p> <tt>swingall.jar</tt> is also needed if you are using JDK 1.1.</p>
@ -32,7 +31,7 @@ that you can use. You can extract it with the following command:
</pre> </pre>
Edit the file to adapt it to your paths and put it to a convenient location. Edit the file to adapt it to your paths and put it to a convenient location.
<a name="cmdline"><h3>Command Line Interface</h3></a> <h3><a name="cmdline">Command Line Interface</a></h3>
The most powerful way to start <I>JODE</I>'s decompiler is the command The most powerful way to start <I>JODE</I>'s decompiler is the command
line interface. Some people don't like long command lines; they line interface. Some people don't like long command lines; they
@ -50,7 +49,7 @@ If you want to decompile a jar package you can do it this way:
If you have installed the batch file/script, you can use it like this: If you have installed the batch file/script, you can use it like this:
<pre>jode --dest srcdir program.jar</pre> <pre>jode --dest srcdir program.jar</pre>
<a name="awt"><h3>AWT Interface</h3></a> <h3><a name="awt">AWT Interface</a></h3>
The AWT Interface looks exactly like the <?php selflink("applet") ?> The AWT Interface looks exactly like the <?php selflink("applet") ?>
applet</a>. In fact the applet uses the AWT Interface. You start it applet</a>. In fact the applet uses the AWT Interface. You start it
@ -65,7 +64,7 @@ dot(<tt>.</tt>) separated name of the class you want to decompile.
Press the <code>start</code> button and the decompiled class should Press the <code>start</code> button and the decompiled class should
appear. You can save it via the <code>save</code> button. appear. You can save it via the <code>save</code> button.
<a name="swing"><h3>Swing Interface</h3></a> <h3><a name="swing">Swing Interface</a></h3>
For the swing interface you need java version 1.2 or the separately For the swing interface you need java version 1.2 or the separately
available swing package (see <?php selflink("links#swing") ?>link available swing package (see <?php selflink("links#swing") ?>link
@ -86,28 +85,27 @@ you don't have the source code. You can also use it to trace bugs in
library code. It is not meant to generate <tt>java</tt> files and so library code. It is not meant to generate <tt>java</tt> files and so
you won't find a save option there.</p> you won't find a save option there.</p>
<a name="java"><h3>Java Interface</h3></a> <h3><a name="java">Java Interface</a></h3>
<p>If you want to integrate <i>JODE</i> into your own java program, <p>If you want to integrate <i>JODE</i> into your own java program,
you can use the <a you can use the <a
href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jode/jode/jode/decompiler/Decompiler.java?rev=jode_1_1&content-type=text/vnd.viewcvs-markup" href="http://cvs.sourceforge.net/cgi-bin/viewcvs.cgi/jode/jode/jode/decompiler/Decompiler.java?rev=jode_1_1&amp;content-type=text/vnd.viewcvs-markup"
><code>jode.decompiler.Decompiler</code></a> ><code>jode.decompiler.Decompiler</code></a>
class. Note that the GPL only allows you to integrate <i>JODE</i> class. Note that the LGPL allows dynamic linking as long as you don't change
into GPL programs. Please tell me if you use <i>JODE</i> in this Jode itself. Please tell me if you use <i>JODE</i> in this way.</p>
way.</p>
<p>You should ship <code>jode-1.1-embedded.jar</code> with your program. This jar file is <p>You should ship <code>jode-1.1-embedded.jar</code> with your program. This jar file is
available in the <? sflink("project/showfiles.php") ?>download area</a>. available in the <? sflink("project/showfiles.php") ?>download area</a>.
It works only under JDK&nbsp;1.2 and above.</p> It works only under JDK&nbsp;1.2 and above.</p>
<a name="optimizer"><h1>Using the Obfuscator</h1> <h1><a name="optimizer">Using the Obfuscator</a></h1>
<p>To use the obfuscator you should first create a script file, say <a <p>To use the obfuscator you should first create a script file, say <a
href="myproject.jos"><tt>myproject.jos</tt></a>. Then you can invoke the href="myproject.jos"><tt>myproject.jos</tt></a>. Then you can invoke the
obfuscator with: obfuscator with:
<pre> <pre>
java jode.obfuscator.Main myproject.jos java jode.obfuscator.Main myproject.jos
</pre></p> </pre>
<p>The script file should contain the following options: </p> <p>The script file should contain the following options: </p>
@ -216,6 +214,8 @@ analyzer is to mark all reachable methods, find out which methods
needs to get the same name (overloading), and which method names needs to get the same name (overloading), and which method names
mustn't change (overload of library methods, e.g. <tt>nextElement</tt> mustn't change (overload of library methods, e.g. <tt>nextElement</tt>
for <tt>Enumeration</tt>s). There are currently two analyzers. for <tt>Enumeration</tt>s). There are currently two analyzers.
</p>
<dl><dt>SimpleAnalyzer</dt> <dl><dt>SimpleAnalyzer</dt>
<dd>Straight forward analyzer. It is fast and will remove dead code <dd>Straight forward analyzer. It is fast and will remove dead code
on method basis.</dd> on method basis.</dd>
@ -227,7 +227,6 @@ and replace constant instruction with a load of the constant, or
remove them completely.<br> This analyzer is especially useful to remove them completely.<br> This analyzer is especially useful to
revert the flow obfuscation of some other obfuscators.</dd> revert the flow obfuscation of some other obfuscators.</dd>
</dl> </dl>
</p>
<pre> <pre>
analyzer = new ConstantAnalyzer analyzer = new ConstantAnalyzer
</pre> </pre>

Loading…
Cancel
Save