diff --git a/testapps/javaProjectTest/javaProject2/.classpath b/testapps/javaProjectTest/javaProject2/.classpath
new file mode 100644
index 0000000..139d9a3
--- /dev/null
+++ b/testapps/javaProjectTest/javaProject2/.classpath
@@ -0,0 +1,7 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<classpath>
+	<classpathentry kind="src" path="src"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5"/>
+	<classpathentry kind="lib" path="libs/basicJar.jar"/>
+	<classpathentry kind="output" path="bin"/>
+</classpath>
diff --git a/testapps/javaProjectTest/javaProject2/.project b/testapps/javaProjectTest/javaProject2/.project
new file mode 100644
index 0000000..70658ff
--- /dev/null
+++ b/testapps/javaProjectTest/javaProject2/.project
@@ -0,0 +1,17 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<projectDescription>
+	<name>javaProjectTest-javaProject2</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/testapps/javaProjectTest/javaProject2/libs/basicJar.jar b/testapps/javaProjectTest/javaProject2/libs/basicJar.jar
new file mode 100644
index 0000000..a81b929
--- /dev/null
+++ b/testapps/javaProjectTest/javaProject2/libs/basicJar.jar
Binary files differ
diff --git a/testapps/javaProjectTest/javaProject2/src/com/android/tests/javaprojecttest/javaproject2/JavaProject2.java b/testapps/javaProjectTest/javaProject2/src/com/android/tests/javaprojecttest/javaproject2/JavaProject2.java
new file mode 100644
index 0000000..05d6c85
--- /dev/null
+++ b/testapps/javaProjectTest/javaProject2/src/com/android/tests/javaprojecttest/javaproject2/JavaProject2.java
@@ -0,0 +1,30 @@
+package com.android.tests.javaprojecttest.javaproject2;
+
+import java.io.BufferedReader;
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.InputStreamReader;
+
+public class JavaProject2 {
+
+    public static String getContent() {
+        InputStream input = JavaProject2.class.getResourceAsStream("JavaProject2.txt");
+
+        BufferedReader reader = null;
+        try {
+            reader = new BufferedReader(new InputStreamReader(input, "UTF-8"));
+
+            return reader.readLine();
+        } catch (IOException e) {
+        } finally {
+            if (reader != null) {
+                try {
+                    reader.close();
+                } catch (IOException e) {
+                }
+            }
+        }
+        
+        return "FAILED TO READ CONTENT";
+    }
+}
diff --git a/testapps/javaProjectTest/javaProject2/src/com/android/tests/javaprojecttest/javaproject2/JavaProject2.txt b/testapps/javaProjectTest/javaProject2/src/com/android/tests/javaprojecttest/javaproject2/JavaProject2.txt
new file mode 100644
index 0000000..6ab43f7
--- /dev/null
+++ b/testapps/javaProjectTest/javaProject2/src/com/android/tests/javaprojecttest/javaproject2/JavaProject2.txt
@@ -0,0 +1 @@
+SUCCESS from javaProject2
\ No newline at end of file
