diff --git a/pmd-jdeveloper/etc/build.xml b/pmd-jdeveloper/etc/build.xml
index cd1f23445f..bf0792f226 100644
--- a/pmd-jdeveloper/etc/build.xml
+++ b/pmd-jdeveloper/etc/build.xml
@@ -2,21 +2,22 @@
-
-
+
-
-
+
+
+
+
-
+
@@ -34,7 +35,7 @@
-
+
@@ -42,18 +43,18 @@
-
-
-
-
+
+
+
+
-
-
-
-
+
+
+
+
diff --git a/pmd-jdeveloper/etc/changelog.txt b/pmd-jdeveloper/etc/changelog.txt
index 2bffc0e04d..7539f24531 100644
--- a/pmd-jdeveloper/etc/changelog.txt
+++ b/pmd-jdeveloper/etc/changelog.txt
@@ -1,5 +1,5 @@
-????? - 0.9:
-
+March 17, 2004 - 0.9:
+Updated to work with JDeveloper 9.0.5 - i.e., 10g.
March 16, 2004 - 0.8:
Updated PMD version to 1.6.
diff --git a/pmd-jdeveloper/etc/doing_the_next_pmd_jdeveloper_release.txt b/pmd-jdeveloper/etc/doing_the_next_pmd_jdeveloper_release.txt
index b14d8f0c8e..d8757b1046 100644
--- a/pmd-jdeveloper/etc/doing_the_next_pmd_jdeveloper_release.txt
+++ b/pmd-jdeveloper/etc/doing_the_next_pmd_jdeveloper_release.txt
@@ -1,5 +1,5 @@
update the release date in the changelog
-change the build.xml to reflect pmd-jdeveloper release 0.8
+change the build.xml to reflect pmd-jdeveloper release 0.9
Create the binary release:
ant release
@@ -10,22 +10,22 @@ TESTS:
Create the src release:
cd ~/data/pmd/
-cvs -q tag -D tomorrow "pmd_jdeveloper_release_0_8" pmd-jdeveloper
+cvs -q tag -D tomorrow "pmd_jdeveloper_release_0_9" pmd-jdeveloper
rm -rf ~/tmp/pmd-jdeveloper
mkdir -p ~/tmp/pmd-jdeveloper
-cvs -q export -d tmp -r pmd_jdeveloper_release_0_8 pmd-jdeveloper
+cvs -q export -d tmp -r pmd_jdeveloper_release_0_9 pmd-jdeveloper
mv tmp/* ~/tmp/pmd-jdeveloper
rmdir tmp/
-cp pmd-jdeveloper/lib/pmd-jdeveloper-0.8.jar ~/tmp/pmd-jdeveloper/lib
+cp pmd-jdeveloper/lib/pmd-jdeveloper-0.9.jar ~/tmp/pmd-jdeveloper/lib
cd ~/tmp
-zip -q -r pmd-jdeveloper-src-0.8.zip pmd-jdeveloper
-ncftpput upload.sourceforge.net incoming/ pmd-jdeveloper-bin-0.8.zip pmd-jdeveloper-src-0.8.zip
+zip -q -r pmd-jdeveloper-src-0.9.zip pmd-jdeveloper
+ncftpput upload.sourceforge.net incoming/ pmd-jdeveloper-bin-0.9.zip pmd-jdeveloper-src-0.9.zip
rm -rf pmd-jdeveloper/
Go to Admin, Edit/Release Files, click on Add new release
Paste stuff into the changelog/readme boxes
-Add the pmd-jdeveloper-src-0.8.zip file
-Add the pmd-jdeveloper-bin-0.8.zip file
+Add the pmd-jdeveloper-src-0.9.zip file
+Add the pmd-jdeveloper-bin-0.9.zip file
Classify the file
Submit some news saying "hey, new release of the jdeveloper plugin!"
diff --git a/pmd-jdeveloper/etc/jdev-ext.xml b/pmd-jdeveloper/etc/jdev-ext.xml
index be8f00324c..471cd24706 100644
--- a/pmd-jdeveloper/etc/jdev-ext.xml
+++ b/pmd-jdeveloper/etc/jdev-ext.xml
@@ -1,7 +1,7 @@
-
+
-
+
PMD static analysis plugin
net.sourceforge.pmd.jdeveloper.Plugin
diff --git a/pmd-jdeveloper/lib/ide.jar b/pmd-jdeveloper/lib/ide.jar
new file mode 100644
index 0000000000..81e0de5395
Binary files /dev/null and b/pmd-jdeveloper/lib/ide.jar differ
diff --git a/pmd-jdeveloper/lib/javatools.jar b/pmd-jdeveloper/lib/javatools.jar
new file mode 100644
index 0000000000..2a7fa8a471
Binary files /dev/null and b/pmd-jdeveloper/lib/javatools.jar differ
diff --git a/pmd-jdeveloper/src/net/sourceforge/pmd/jdeveloper/Plugin.java b/pmd-jdeveloper/src/net/sourceforge/pmd/jdeveloper/Plugin.java
index 1a9e7f0ef8..c9f3abafe9 100644
--- a/pmd-jdeveloper/src/net/sourceforge/pmd/jdeveloper/Plugin.java
+++ b/pmd-jdeveloper/src/net/sourceforge/pmd/jdeveloper/Plugin.java
@@ -16,6 +16,7 @@ import oracle.ide.config.IdeSettings;
import oracle.ide.model.Document;
import oracle.ide.model.Element;
import oracle.ide.model.Project;
+import oracle.ide.model.Reference;
import oracle.ide.panels.Navigable;
import oracle.jdeveloper.model.JProject;
import oracle.jdeveloper.model.JavaSourceNode;
@@ -98,6 +99,11 @@ public class Plugin implements Addin, Controller, ContextMenuListener {
Iterator i = ((Project)context.getDocument()).getListOfChildren().iterator();
while (i.hasNext()) {
Object obj = i.next();
+ if (!(obj instanceof Reference)) {
+ System.out.println("PMD plugin expected a Reference, found a " + obj.getClass() + " instead. Odd.");
+ continue;
+ }
+ obj = ((Reference)obj).getData();
if (!(obj instanceof Document)) {
continue;
}