aboutsummaryrefslogtreecommitdiff
path: root/website-old/features/delombok.html
diff options
context:
space:
mode:
Diffstat (limited to 'website-old/features/delombok.html')
-rw-r--r--website-old/features/delombok.html80
1 files changed, 80 insertions, 0 deletions
diff --git a/website-old/features/delombok.html b/website-old/features/delombok.html
new file mode 100644
index 00000000..f321db45
--- /dev/null
+++ b/website-old/features/delombok.html
@@ -0,0 +1,80 @@
+<!DOCTYPE html>
+<html><head>
+ <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+ <link rel="stylesheet" type="text/css" href="../logi/reset.css" />
+ <link rel="stylesheet" type="text/css" href="features.css" />
+ <link rel="shortcut icon" href="../favicon.ico" type="image/x-icon" />
+ <meta name="description" content="Spice up your java" />
+ <title>delombok</title>
+</head><body><div id="pepper">
+ <div class="minimumHeight"></div>
+ <div class="meat">
+ <div class="header"><a href="../index.html">Project Lombok</a></div>
+ <h1>delombok</h1>
+ <div class="overview">
+ <h3>Overview</h3>
+ <p>
+ Normally, lombok adds support for all the lombok features directly to your IDE and compiler by plugging into them.<br />
+ However, lombok doesn't cover all tools. For example, lombok cannot plug into javadoc, nor can it plug into the Google Widget Toolkit, both of which
+ run on java sources. Delombok still allows you to use lombok with these tools by preprocessing your java code into java code with all of lombok's
+ transformations already applied.
+ </p><p>
+ Delombok can of course also help understand what's happening with your source by letting you look at exactly what lombok is doing 'under the hood'.
+ </p><p>
+ Delombok's standard mode of operation is that it copies an entire directory into another directory, recursively, skipping class files, and applying
+ lombok transformations to any java source files it encounters.
+ </p><p>
+ Delombok's output format can be configured with command line options (use <code>--format-help</code> for a complete list). A few such options are automatically scanned from input if possible (such as indent). If delombok's formatting is not conforming to your preferred code style, have a look!
+ </p>
+ <h3>Running delombok on the command line</h3>
+ <p>
+ Delombok is included in <code>lombok.jar</code>. To use it, all you need to run on the command line is:
+ <div class="snippet"><pre>java -jar lombok.jar delombok src -d src-delomboked</pre></div>
+ <br />
+ Which will duplicate the contents of the <code>src</code> directory into the <code>src-delomboked</code> directory, which will be created if it
+ doesn't already exist, but delomboked of course. Delombok on the command line has a few more options; use the <code>--help</code> parameter to see more options.
+ </p><p>
+ To let delombok print the transformation result of a single java file directly to standard output, you can use:
+ <div class="snippet"><pre>java -jar lombok.jar delombok -p MyJavaFile.java</pre></div>
+ </p>
+ <h3>Running delombok in ant</h3>
+ <code>lombok.jar</code> includes an ant task which can apply delombok for you. For example, to create javadoc for your project, your <code>build.xml</code> file
+ would look something like:
+ <div class="snippet"><pre>&lt;target name="javadoc"&gt;
+ &lt;taskdef classname="lombok.delombok.ant.Tasks$Delombok" classpath="lib/lombok.jar" name="delombok" /&gt;
+ &lt;mkdir dir="build/src-delomboked" /&gt;
+ <strong>&lt;delombok verbose="true" encoding="UTF-8" to="build/src-delomboked" from="src"&gt;</strong>
+ <strong>&lt;format value="suppressWarnings:skip" /&gt;</strong>
+ <strong>&lt;/delombok&gt;</strong>
+ &lt;mkdir dir="build/api" /&gt;
+ &lt;javadoc sourcepath="build/src-delomboked" defaultexcludes="yes" destdir="build/api" /&gt;
+&lt;/target&gt;</pre></div>
+ <br />
+ Instead of a <code>from</code> attribute, you can also nest <code>&lt;fileset&gt;</code> nodes.
+ <h3>Running delombok in maven</h3>
+ Anthony Whitford has written a <a href="https://github.com/awhitford/lombok.maven">maven plugin</a> for delomboking your source code.
+ <h3>Limitations</h3>
+ Delombok tries to preserve your code as much as it can, but comments may move around a little bit, especially comments that are in the middle of
+ a syntax node. For example, any comments appearing in the middle of a list of method modifiers, such as <code>public /*comment*/ static ...</code> will
+ move towards the front of the list of modifiers. In practice, any java source parsing tool will not be affected.<br />
+ To keep any changes to your code style to a minimum, delombok just copies a source file directly without changing any of it if the source file contains
+ no lombok transformations.
+ </div>
+ <div class="footer">
+ <a href="index.html">Back to features</a><br />
+ <a href="../credits.html" class="creditsLink">credits</a> | <span class="copyright">Copyright &copy; 2009-2016 The Project Lombok Authors, licensed under the <a href="http://www.opensource.org/licenses/mit-license.php">MIT license</a>.</span>
+ </div>
+ <div style="clear: both;"></div>
+ </div>
+</div>
+<script type="text/javascript">
+ var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
+ document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
+</script>
+<script type="text/javascript">
+ try {
+ var pageTracker = _gat._getTracker("UA-9884254-1");
+ pageTracker._trackPageview();
+ } catch(err) {}
+</script>
+</body></html>