diff --git a/apps/desktopgui/.classpath b/apps/desktopgui/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..18abb1c6c39452be7831a372903095499c50b410
--- /dev/null
+++ b/apps/desktopgui/.classpath
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_router"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry kind="lib" path="/lib/wrapper/all/wrapper.jar"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="output" path="build"/>
+</classpath>
diff --git a/apps/desktopgui/.project b/apps/desktopgui/.project
new file mode 100644
index 0000000000000000000000000000000000000000..791ea5c23bfcc8622769f0b795e833c675b49ba6
--- /dev/null
+++ b/apps/desktopgui/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>desktopgui</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/i2psnark/.classpath b/apps/i2psnark/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..f82d4d002d5dde07f4abae95a2bb92dcb1fec9fb
--- /dev/null
+++ b/apps/i2psnark/.classpath
@@ -0,0 +1,11 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="java/src"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/ministreaming"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/javax.servlet.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/jetty-util.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/org.mortbay.jetty.jar"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="output" path="java/build/obj"/>
+</classpath>
diff --git a/apps/i2psnark/.project b/apps/i2psnark/.project
new file mode 100644
index 0000000000000000000000000000000000000000..ee1ba7c85f473edd776f922b2171a1b5fcc59295
--- /dev/null
+++ b/apps/i2psnark/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>i2psnark</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/i2ptunnel/java/.classpath b/apps/i2ptunnel/java/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..b7b032f8c59d76d51fe5e0203dcc78d599799b17
--- /dev/null
+++ b/apps/i2ptunnel/java/.classpath
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="src" path="test/junit"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/ministreaming"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
+	<classpathentry kind="output" path="build/obj"/>
+</classpath>
diff --git a/apps/i2ptunnel/java/.project b/apps/i2ptunnel/java/.project
new file mode 100644
index 0000000000000000000000000000000000000000..da6d2de55bcb20d885c46c12e4c6e8661f3af807
--- /dev/null
+++ b/apps/i2ptunnel/java/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>i2ptunnel</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/jetty/.classpath b/apps/jetty/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..fc1168715d3edbf1d1ceb3df80a383b4bf3a6bf5
--- /dev/null
+++ b/apps/jetty/.classpath
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="java/src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry kind="lib" path="jettylib/javax.servlet.jar"/>
+	<classpathentry kind="lib" path="jettylib/jetty-util.jar"/>
+	<classpathentry kind="lib" path="jettylib/org.mortbay.jetty.jar"/>
+	<classpathentry kind="output" path="build/obj"/>
+</classpath>
diff --git a/apps/jetty/.project b/apps/jetty/.project
new file mode 100644
index 0000000000000000000000000000000000000000..8bdb6e7a1351479701b630c5827e25895596d5be
--- /dev/null
+++ b/apps/jetty/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>jetty</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/jrobin/.classpath b/apps/jrobin/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..9913a9dfe74041fabd69ea2370926901870b09c7
--- /dev/null
+++ b/apps/jrobin/.classpath
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="output" path="build"/>
+</classpath>
diff --git a/apps/jrobin/.project b/apps/jrobin/.project
new file mode 100644
index 0000000000000000000000000000000000000000..b83cf5b6893fefc174c05e41c7277a21b9b00ee2
--- /dev/null
+++ b/apps/jrobin/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>jrobin</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/ministreaming/java/.classpath b/apps/ministreaming/java/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..7f2a8504dd946419e1fb1d229e1086240acece9d
--- /dev/null
+++ b/apps/ministreaming/java/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="src" path="test/junit"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="output" path="build/obj"/>
+</classpath>
diff --git a/apps/ministreaming/java/.project b/apps/ministreaming/java/.project
new file mode 100644
index 0000000000000000000000000000000000000000..ad6de9aeb409c118deab84a1ba88342a29929f89
--- /dev/null
+++ b/apps/ministreaming/java/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>ministreaming</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/routerconsole/java/.classpath b/apps/routerconsole/java/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..f9fb9aae4bc892b75e587c05f3daccb9d22eb559
--- /dev/null
+++ b/apps/routerconsole/java/.classpath
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_router"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/desktopgui"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/systray"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="lib" path="/lib/wrapper/all/wrapper.jar"/>
+	<classpathentry kind="lib" path="/jrobin/jrobin-1.5.9.1.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/javax.servlet.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/jetty-java5-threadpool.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/jetty-sslengine.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/jetty-util.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/org.mortbay.jetty.jar"/>
+	<classpathentry kind="output" path="build/obj"/>
+</classpath>
diff --git a/apps/routerconsole/java/.project b/apps/routerconsole/java/.project
new file mode 100644
index 0000000000000000000000000000000000000000..7ae887994b43c5a49816a783732cbea4bca529e0
--- /dev/null
+++ b/apps/routerconsole/java/.project
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>routerconsole</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+	<linkedResources>
+		<link>
+			<name>jsp</name>
+			<type>2</type>
+			<location>/home/str4d/dev/i2p/i2p.i2p/apps/routerconsole/jsp</location>
+		</link>
+	</linkedResources>
+</projectDescription>
diff --git a/apps/susidns/src/.classpath b/apps/susidns/src/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..4847bccb339401381999e9922ab6cb17af370386
--- /dev/null
+++ b/apps/susidns/src/.classpath
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="java/src"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry kind="lib" path="WEB-INF/lib/jstl.jar"/>
+	<classpathentry kind="lib" path="WEB-INF/lib/standard.jar"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="output" path="WEB-INF/classes"/>
+</classpath>
diff --git a/apps/susidns/src/.project b/apps/susidns/src/.project
new file mode 100644
index 0000000000000000000000000000000000000000..bf20fe7bdda98ba9e76992062462cfa9eb315833
--- /dev/null
+++ b/apps/susidns/src/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>susidns</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/susimail/.classpath b/apps/susimail/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..298429060783f669d296ac867c57821a5c49492e
--- /dev/null
+++ b/apps/susimail/.classpath
@@ -0,0 +1,10 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src/src"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/javax.servlet.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/jetty-util.jar"/>
+	<classpathentry kind="lib" path="/jetty/jettylib/org.mortbay.jetty.jar"/>
+	<classpathentry kind="output" path="src/WEB-INF/classes"/>
+</classpath>
diff --git a/apps/susimail/.project b/apps/susimail/.project
new file mode 100644
index 0000000000000000000000000000000000000000..bed2da86c30c1bdeefc6c917295c4ad4b1f24fc3
--- /dev/null
+++ b/apps/susimail/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>susimail</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/apps/systray/java/.classpath b/apps/systray/java/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..dc7ab940fe37fe91db84390c42c7cae607db8afe
--- /dev/null
+++ b/apps/systray/java/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry kind="lib" path="lib/systray4j.jar"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="output" path="build/obj"/>
+</classpath>
diff --git a/apps/systray/java/.project b/apps/systray/java/.project
new file mode 100644
index 0000000000000000000000000000000000000000..3ca19d44ec8bfe3ac0878c7cd8a1adb100be2c58
--- /dev/null
+++ b/apps/systray/java/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>systray</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/core/java/.classpath b/core/java/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..a2a2a595a3f1b9a5bf216529e4da3c60dd8213ca
--- /dev/null
+++ b/core/java/.classpath
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="src" path="test/junit"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
+	<classpathentry kind="output" path="build/obj"/>
+</classpath>
diff --git a/core/java/.project b/core/java/.project
new file mode 100644
index 0000000000000000000000000000000000000000..92e9e9a3816fbedda3cb079c7e661c67bcbd515b
--- /dev/null
+++ b/core/java/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>i2p_sdk</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/installer/lib/.classpath b/installer/lib/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..9913a9dfe74041fabd69ea2370926901870b09c7
--- /dev/null
+++ b/installer/lib/.classpath
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="output" path="build"/>
+</classpath>
diff --git a/installer/lib/.project b/installer/lib/.project
new file mode 100644
index 0000000000000000000000000000000000000000..106aa246de5cc730845b217a49b9b9eb31c1bffb
--- /dev/null
+++ b/installer/lib/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>lib</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>
diff --git a/router/java/.classpath b/router/java/.classpath
new file mode 100644
index 0000000000000000000000000000000000000000..829d495262869ce0fc774d81183e03ed8c7ae776
--- /dev/null
+++ b/router/java/.classpath
@@ -0,0 +1,9 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="src" path="test/junit"/>
+	<classpathentry combineaccessrules="false" kind="src" path="/i2p_sdk"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.junit.JUNIT_CONTAINER/4"/>
+	<classpathentry kind="output" path="build/obj"/>
+</classpath>
diff --git a/router/java/.project b/router/java/.project
new file mode 100644
index 0000000000000000000000000000000000000000..0fb314e4e537242e33f6fa862d7229bd67f10ad3
--- /dev/null
+++ b/router/java/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>i2p_router</name>
+	<comment></comment>
+	<projects>
+	</projects>
+	<buildSpec>
+		<buildCommand>
+			<name>org.eclipse.jdt.core.javabuilder</name>
+			<arguments>
+			</arguments>
+		</buildCommand>
+	</buildSpec>
+	<natures>
+		<nature>org.eclipse.jdt.core.javanature</nature>
+	</natures>
+</projectDescription>