Release 4.1.3.0.0

git-svn-id: https://pmd.svn.sourceforge.net/svnroot/pmd/trunk@5704 51baf565-9d33-0410-a72c-fc3788e3496d
This commit is contained in:
Torsten Kleiber
2007-12-18 14:20:11 +00:00
parent 7a08c0d3ac
commit d528747d25
13 changed files with 135 additions and 101 deletions

View File

@ -3,8 +3,11 @@
<property name="config" value="config/"/>
<property name="src" value="src/"/>
<property name="etc" value="etc/"/>
<property name="pmdjar" value="pmd-4.0.jar"/>
<property name="pluginversion" value="1.9.0.0.1"/>
<property name="pmdjar" value="pmd-4.1.jar"/>
<!-- first and second number for the pmd plugin -->
<!-- third number JDeveloper Version 1:9.0.5-10.1.2, 2:10.1.3, 3:11.1.1 -->
<!-- fourth and fifth number minor version number for the JDeveloper Plugin -->
<property name="pluginversion" value="4.1.3.0.0"/>
<property name="mainclass" value="net.sourceforge.pmd.jdeveloper"/>
<property name="jdeveloper.dir" value="C:\Oracle\11gJD11110"/>
<property name="jdeveloper.ext.subdir" value="jdev/extensions"/>
@ -21,7 +24,7 @@
<property name="release.src.zipname"
value="${ant.project.name}-src-${pluginversion}.zip"/>
<property name="bundle.filename"
value="${ant.project.name}-${pluginversion}.zip"/>
value="${ant.project.name}-bundle-${pluginversion}.zip"/>
<property name="jdeveloper.install.dir"
value="${jdeveloper.dir}/${jdeveloper.ext.subdir}"/>
<!-- property section end -->
@ -62,17 +65,17 @@
<copy file="lib/${release.jarname}" todir="${jdeveloper.install.dir}"/>
<copy file="lib/${pmdjar}"
todir="${jdeveloper.install.dir}/${mainclass}.${pluginversion}/lib"/>
<copy file="lib/jaxen-1.1.jar"
<copy file="lib/jaxen-1.1.1.jar"
todir="${jdeveloper.install.dir}/${mainclass}.${pluginversion}/lib"/>
<copy file="lib/asm-3.0.jar"
<copy file="lib/asm-3.1.jar"
todir="${jdeveloper.install.dir}/${mainclass}.${pluginversion}/lib"/>
</target>
<target name="release" depends="clean,jar">
<mkdir dir="tmp/${release.dirname}/lib"/>
<copy file="lib/${release.jarname}" todir="tmp/"/>
<copy file="lib/${pmdjar}" todir="tmp/${release.dirname}/lib"/>
<copy file="lib/jaxen-1.1.jar" todir="tmp/${release.dirname}/lib"/>
<copy file="lib/asm-3.0.jar" todir="tmp/${release.dirname}/lib"/>
<copy file="lib/jaxen-1.1.1.jar" todir="tmp/${release.dirname}/lib"/>
<copy file="lib/asm-3.1.jar" todir="tmp/${release.dirname}/lib"/>
<zip destfile="${release.zipname}" basedir="tmp/"/>
<move file="${release.zipname}" todir="${release.dir}"/>
<delete dir="tmp"/>
@ -96,9 +99,9 @@
<copy file="lib/${release.jarname}" todir="update-center-bundle/"/>
<copy file="lib/${pmdjar}"
todir="update-center-bundle/${mainclass}.${pluginversion}/lib/"/>
<copy file="lib/jaxen-1.1.jar"
<copy file="lib/jaxen-1.1.1.jar"
todir="update-center-bundle/${mainclass}.${pluginversion}/lib/"/>
<copy file="lib/asm-3.0.jar"
<copy file="lib/asm-3.1.jar"
todir="update-center-bundle/${mainclass}.${pluginversion}/lib/"/>
<zip destfile="update-center-bundle/${bundle.filename}"
basedir="update-center-bundle">
@ -110,13 +113,13 @@
<delete dir="update-center-bundle/${mainclass}.${pluginversion}"/>
<delete dir="update-center-bundle/lib"/>
<delete dir="update-center-bundle/META-INF"/>
<move file="update-center-bundle" todir="${release.dir}"/>
<move file="update-center-bundle/${bundle.filename}" todir="${release.dir}"/>
</target>
<target name="upload" depends="release,releasesrc">
<target name="upload" depends="release,releasesrc,bundle">
<ftp server="upload.sourceforge.net" userid="anonymous"
password="${upload.ftp.pwd}" remotedir="incoming" binary="true"
passive="true">
<fileset dir="${release.dir}" includes="*.zip"/>
<fileset dir="${release.dir}" includes="${ant.project.name}*${pluginversion}.zip"/>
</ftp>
</target>
<target name="uploadbundle" depends="bundle">

View File

@ -2,9 +2,13 @@
<update-bundle version="1.0" xmlns="http://xmlns.oracle.com/jdeveloper/updatebundle">
<update id="net.sourceforge.pmd.jdeveloper" xmlns="http://xmlns.oracle.com/jdeveloper/update">
<name>PMD JDeveloper Extension</name>
<version>1.9.0.0.1</version>
<version>4.1.3.0.0</version>
<author>Torsten Kleiber</author>
<author-url>http://pmd.sourceforge.net/</author-url>
<description>Provides integrated support for PMD 4.0 in JDeveloper 11g Technology Preview 2.</description>
<description>Provides integrated support for PMD 4.1 in JDeveloper 11g Technology Preview 2.</description>
<requirements>
<requires-extension id="oracle.jdeveloper" minVersion="11.1.1.0.20.46.84"
maxVersion="11.1.1.0.20.46.84"/>
</requirements>
</update>
</update-bundle>
</update-bundle>

View File

@ -1,26 +1,25 @@
<?xml version="1.0"?>
<updates version="1.0" xmlns="http://xmlns.oracle.com/jdeveloper/updatecenter"
xmlns:u="http://xmlns.oracle.com/jdeveloper/update">
<u:update id="net.sourceforge.pmd.jdeveloper">
<u:name>PMD JDeveloper Extension</u:name>
<u:version>1.9</u:version>
<u:author>Torsten Kleiber</u:author>
<u:author-url>http://pmd.sourceforge.net</u:author-url>
<u:description>Provides integrated support for PMD 4.0 in JDeveloper 10.1.3. - 11g Technology Preview 1.</u:description>
<u:bundle-url>http://pmd.sourceforge.net/pmd-jdeveloper1013-1.9.zip</u:bundle-url>
<u:requirements>
<u:requires-extension id="oracle.jdeveloper" minVersion="10.1.3.00" maxVersion="11.1.1.0.20.45" />
</u:requirements>
</u:update>
<u:update id="net.sourceforge.pmd.jdeveloper">
<u:name>PMD JDeveloper Extension</u:name>
<u:version>1.9.0.0.1</u:version>
<u:author>Torsten Kleiber</u:author>
<u:author-url>http://pmd.sourceforge.net</u:author-url>
<u:description>Provides integrated support for PMD 4.0 in JDeveloper 11g Technology Preview 2.</u:description>
<u:bundle-url>http://pmd.sourceforge.net/pmd-jdeveloper1111-1.9.0.0.1.zip</u:bundle-url>
<u:requirements>
<u:requires-extension id="oracle.jdeveloper" minVersion="11.1.1.0.20.46.84" maxVersion="11.1.1.0.20.46.84" />
</u:requirements>
</u:update>
<?xml version="1.0" encoding = 'UTF-8'?>
<updates version="1.0" xmlns="http://xmlns.oracle.com/jdeveloper/updatecenter">
<update id="net.sourceforge.pmd.jdeveloper" xmlns="http://xmlns.oracle.com/jdeveloper/update">
<name>PMD JDeveloper Extension</name>
<version>4.1.2.0.0</version>
<author>Torsten Kleiber</author>
<author-url>http://pmd.sourceforge.net</author-url>
<description>Provides integrated support for PMD 4.1 in JDeveloper 10.1.3 - 11g Technology Preview 1.</description>
<bundle-url>http://downloads.sourceforge.net/pmd/pmd-jdeveloper1013-bundle-4.1.2.0.0.zip</bundle-url>
<requirements>
<requires-extension id="oracle.jdeveloper" minVersion="10.1.3.00" maxVersion="11.1.1.0.20.45" />
</requirements>
</update>
<update id="net.sourceforge.pmd.jdeveloper" xmlns="http://xmlns.oracle.com/jdeveloper/update">
<name>PMD JDeveloper Extension</name>
<version>4.1.3.0.0</version>
<author>Torsten Kleiber</author>
<author-url>http://pmd.sourceforge.net</author-url>
<description>Provides integrated support for PMD 4.1 in JDeveloper 11g Technology Preview 2.</description>
<bundle-url>http://downloads.sourceforge.net/pmd/pmd-jdeveloper1111-bundle-4.1.3.0.0.zip</bundle-url>
<requirements>
<requires-extension id="oracle.jdeveloper" minVersion="11.1.1.0.20.46.84" maxVersion="11.1.1.0.20.46.84" />
</requirements>
</update>
</updates>

View File

@ -1,9 +1,10 @@
November 06, 2007 - 1.9.0.0.1:
Upgraded for use in JDeveloper 11.1.1 Developer Preview 2
December 06, 2007 - 4.1:
Updated PMD version to 4.1.
Set PMD java version to project J2SE/target.
Fix for showing rules examples in PMD property window.
August 06, 2007 - 1.9:
Upgraded to PMD 4.0
Upgraded for use in JDeveloper 10.1.3 to 11.1.1 Developer Preview 1
January 30, 2005 - 1.8:
Better presentation of the rule violations.

View File

@ -1,4 +1,4 @@
change the build.xml, bundle.xml, center.xml to reflect pmd-jdeveloper1111 release
change the build.xml, bundle.xml, center.xml to reflect pmd-jdeveloper release
update the release date in the changelog
Update Plugin.version() to reflect release
@ -22,15 +22,15 @@ src release:
// TODO automation by ant, if subversion tasks are available
checkin
// TODO automation by ant, if subversion tasks are available
copy to tags/pmd-jdeveloper/pmd_jdeveloper1111_release_X_X
copy to tags/pmd-jdeveloper/pmd_jdeveloperXXX_release_X_X_X_X_X
ant releasesrc
release on website:
ant upload
Go to Admin, Edit/Release Files, click on Add new release
Paste stuff into the changelog/readme boxes
Add the pmd-jdeveloper1111-src-1.9.0.0.1.zip file
Add the pmd-jdeveloper1111-bin-1.9.0.0.1.zip file
Add the pmd-jdeveloperXXX-src-X.X.X.X.X.zip file
Add the pmd-jdeveloperXXX-bin-X.X.X.X.X.zip file
Classify the file
Submit some news saying "hey, new release of the jdeveloper 1111 plugin!"
Submit some news saying "hey, new release of the jdeveloper plugin!"

View File

@ -1,17 +1,18 @@
<?xml version = '1.0' encoding = 'UTF-8'?>
<extension xmlns="http://jcp.org/jsr/198/extension-manifest"
id="net.sourceforge.pmd.jdeveloper" version="1.9.0.0.1"
id="net.sourceforge.pmd.jdeveloper" version="4.1.3.0.0"
esdk-version="1.0">
<name>PMD JDeveloper Extension</name>
<owner>Torsten Kleiber</owner>
<dependencies>
<import>oracle.jdeveloper</import>
<import>oracle.javacore</import>
<import>oracle.ide.ceditor</import>
</dependencies>
<classpaths>
<classpath>net.sourceforge.pmd.jdeveloper.1.9.0.0.1/lib/pmd-4.0.jar</classpath>
<classpath>net.sourceforge.pmd.jdeveloper.1.9.0.0.1/lib/jaxen-1.1.jar</classpath>
<classpath>net.sourceforge.pmd.jdeveloper.1.9.0.0.1/lib/asm-3.0.jar</classpath>
<classpath>net.sourceforge.pmd.jdeveloper.4.1.3.0.0/lib/pmd-4.1.jar</classpath>
<classpath>net.sourceforge.pmd.jdeveloper.4.1.3.0.0/lib/jaxen-1.1.1.jar</classpath>
<classpath>net.sourceforge.pmd.jdeveloper.4.1.3.0.0/lib/asm-3.1.jar</classpath>
</classpaths>
<hooks>
<jdeveloper-hook xmlns="http://xmlns.oracle.com/jdeveloper/1013/extension">
@ -20,7 +21,7 @@
</addins>
</jdeveloper-hook>
<feature-hook>
<description>Provides integrated support for PMD 4.0 in JDeveloper 11g Technology Preview 2.</description>
<description>Provides integrated support for PMD 4.1 in JDeveloper 11g Technology Preview 2.</description>
<optional>false</optional>
</feature-hook>
</hooks>

Binary file not shown.

View File

@ -9,7 +9,6 @@ import net.sourceforge.pmd.cpd.CPD;
import net.sourceforge.pmd.cpd.LanguageFactory;
import net.sourceforge.pmd.cpd.Match;
import net.sourceforge.pmd.cpd.TokenEntry;
import net.sourceforge.pmd.SourceType;
import oracle.ide.Addin;
import oracle.ide.AddinManager;
@ -35,7 +34,6 @@ import oracle.ide.navigator.NavigatorManager;
import oracle.ide.panels.Navigable;
import oracle.jdeveloper.compiler.IdeLog;
import oracle.jdeveloper.compiler.OjcConfigurationPanel;
import oracle.jdeveloper.compiler.IdeStorage;
import oracle.jdeveloper.model.JavaSourceNode;
@ -57,10 +55,6 @@ import java.util.Iterator;
import java.util.List;
import java.util.Map;
import oracle.jdeveloper.compiler.BuildSystemConfiguration;
import oracle.jdeveloper.compiler.OjcConfiguration;
public class Plugin implements Addin, Controller, ContextMenuListener {
public class CPDViolationPage extends AbstractLogPage implements TreeSelectionListener {
@ -168,7 +162,6 @@ public class Plugin implements Addin, Controller, ContextMenuListener {
private boolean added;
private Map pmdFileToNodeMap = new HashMap(); // whew, this is kludgey
private Map cpdFileToNodeMap = new HashMap(); // whew, this is kludgey
private static BuildSystemConfiguration config;
// Addin
@ -197,7 +190,7 @@ public class Plugin implements Addin, Controller, ContextMenuListener {
IdeSettings.registerUI(new Navigable(PMD_TITLE, SettingsPanel.class,
new Navigable[] { }));
Ide.getVersionInfo().addComponent(PMD_TITLE,
" JDeveloper Extension " + version());
"JDeveloper Extension " + Version.version());
ruleViolationPage = new RuleViolationPage();
// cpdViolationPage = new CPDViolationPage();
@ -208,10 +201,6 @@ public class Plugin implements Addin, Controller, ContextMenuListener {
EditorManager.getEditorManager().getContextMenu().removeContextMenuListener(this);
}
public String version() {
return "1.9.0.0.1";
}
public float ideVersion() {
return 0.1f;
}
@ -238,7 +227,7 @@ public class Plugin implements Addin, Controller, ContextMenuListener {
try {
pmdFileToNodeMap.clear();
PMD pmd = new PMD();
setJavaVersion(context, pmd);
Version.setJavaVersion(context, pmd);
SelectedRules rules =
new SelectedRules(SettingsPanel.createSettingsStorage());
@ -267,17 +256,17 @@ public class Plugin implements Addin, Controller, ContextMenuListener {
e.getReason().printStackTrace();
JOptionPane.showMessageDialog(null,
"Error while running PMD: " +
"\n" +
e.getMessage() + "\n" +
e.getReason().getMessage(), PMD_TITLE,
JOptionPane.ERROR_MESSAGE);
"\n" + e.getMessage() + "\n" +
e.getReason().getMessage(),
PMD_TITLE,
JOptionPane.ERROR_MESSAGE);
} catch (Exception e) {
logMessage(e.getMessage());
e.printStackTrace();
JOptionPane.showMessageDialog(null,
"Error while running PMD: " +
"\n" +
e.getMessage(), PMD_TITLE, JOptionPane.ERROR_MESSAGE);
"\n" + e.getMessage(), PMD_TITLE,
JOptionPane.ERROR_MESSAGE);
}
} else if (ideAction.getCommandId() == RUN_CPD_CMD_ID) {
try {
@ -332,20 +321,6 @@ public class Plugin implements Addin, Controller, ContextMenuListener {
return true;
}
private void setJavaVersion(Context context, PMD pmd) {
config = BuildSystemConfiguration.getInstance(context.getProject());
String source = config.getSource();
if (source.equals("1.6")) {
pmd.setJavaVersion(SourceType.JAVA_16);
} else if (source.equals("1.5")) {
pmd.setJavaVersion(SourceType.JAVA_15);
} else if (source.equals("1.4")) {
pmd.setJavaVersion(SourceType.JAVA_14);
} else if (source.equals("1.3")) {
pmd.setJavaVersion(SourceType.JAVA_13);
}
}
public boolean update(IdeAction ideAction, Context context) {
return false;
}

View File

@ -18,8 +18,12 @@ import java.awt.event.ActionListener;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import java.awt.event.MouseMotionListener;
import java.io.File;
import java.util.List;
public class SettingsPanel extends DefaultTraversablePanel {
private class FindListener implements ActionListener {
@ -39,20 +43,7 @@ public class SettingsPanel extends DefaultTraversablePanel {
private class MyMouseAdapter extends MouseAdapter {
public void mouseEntered(MouseEvent e) {
int index = locationToIndex(e.getPoint());
if (index != -1) {
JCheckBox box = (JCheckBox)getModel().getElementAt(index);
String example =
rules.getRule(box).getExamples().toString();
while (example.charAt(0) == '\r' ||
example.charAt(0) == '\n' ||
example.charAt(0) == '\t' ||
example.charAt(0) == ' ') {
example = example.substring(1);
}
exampleTextArea.setText(example);
exampleTextArea.setCaretPosition(0);
}
// No action needed when mouse is entered
}
public void mousePressed(MouseEvent e) {
@ -65,6 +56,37 @@ public class SettingsPanel extends DefaultTraversablePanel {
}
}
private class MyMouseMotionListener implements MouseMotionListener {
public void mouseDragged(MouseEvent e) {
// No dragging actions needed
}
public void mouseMoved(MouseEvent e) {
int index = locationToIndex(e.getPoint());
if (index != -1) {
JCheckBox box = (JCheckBox)getModel().getElementAt(index);
List examples = rules.getRule(box).getExamples();
StringBuffer examplesBuffer = new StringBuffer();
if (!examples.isEmpty()) {
for (int i = 0; i < examples.size(); i++) {
examplesBuffer.append(examples.get(i));
}
}
String example = examplesBuffer.toString();
while (example.charAt(0) == '\r' ||
example.charAt(0) == '\n' ||
example.charAt(0) == '\t' ||
example.charAt(0) == ' ') {
example = example.substring(1);
}
exampleTextArea.setText(example);
exampleTextArea.setCaretPosition(0);
}
}
}
public class CheckboxListCellRenderer implements ListCellRenderer {
public Component getListCellRendererComponent(JList list,
Object value,
@ -87,8 +109,8 @@ public class SettingsPanel extends DefaultTraversablePanel {
super(args);
setCellRenderer(new CheckboxListCellRenderer());
addMouseListener(new MyMouseAdapter());
addMouseMotionListener(new MyMouseMotionListener());
}
}
public static final String RULE_SELECTIONS_STORED_SEPARATELY =

View File

@ -0,0 +1,29 @@
package net.sourceforge.pmd.jdeveloper;
import net.sourceforge.pmd.PMD;
import net.sourceforge.pmd.SourceType;
import oracle.ide.Context;
import oracle.jdeveloper.compiler.BuildSystemConfiguration;
class Version {
public static void setJavaVersion(Context context, PMD pmd) {
BuildSystemConfiguration config = BuildSystemConfiguration.getInstance(context.getProject());
String source = config.getSource();
if (source.equals("1.6")) {
pmd.setJavaVersion(SourceType.JAVA_16);
} else if (source.equals("1.5")) {
pmd.setJavaVersion(SourceType.JAVA_15);
} else if (source.equals("1.4")) {
pmd.setJavaVersion(SourceType.JAVA_14);
} else if (source.equals("1.3")) {
pmd.setJavaVersion(SourceType.JAVA_13);
}
}
public static String version() {
return "4.1.3.0.0";
}
}