Skip to content

Latest commit

 

History

1,661 提交

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

仓库 files navigation

PMD Eclipse Plugin

Build Status Eclipse 市场

Release Notes: https://github.com/pmd/pmd-eclipse-plugin/blob/main/ReleaseNotes.md

Eclipse Update Site:

市场: Drag to your running Eclipse workspace. Requires Eclipse 市场 Client

How to contribute

You can contribute by testing the latest version, creating bug reports, or even forking the repository on github and create pull requests. Any contributions are welcome!

Testing the latest version

The plugin requires Java 17 for building.

Then simply build the plugin locally using maven:

./mvnw clean verify

You'll find the zipped update site in the folder net.sourceforge.pmd.eclipse.p2updatesite/target/. Point eclipse to the zip file in this folder as an update-site and install the latest SNAPSHOT version.

Bug Reports

Please file any bug reports in the bug tracker at github:

https://github.com/pmd/pmd-eclipse-plugin/issues

GitHub 仓库

Just fork the the GitHub 仓库 pmd/pmd-eclipse-plugin and create a pull request.

https://github.com/pmd/pmd-eclipse-plugin/

To get started, see also the next section.

Short Developer's Guide

Compilation

Simply run ./mvn clean verify. The plugin's update site will be generated in net.sourceforge.pmd.eclipse.p2updatesite/target/repository. You can use this directory as an update site to install the new plugin version directly into your Eclipse.

Importing the projects in Eclipse

Make sure you have the Maven Integration (m2e - http://eclipse.org/m2e/) installed. Then you can import Existing Maven 项目. You should see 6 projects:

  • net.sourceforge.pmd.eclipse - that's the feature
  • net.sourceforge.pmd.eclipse.p2updatesite - generates the update site
  • net.sourceforge.pmd.eclipse.parent - the parent pom project
  • net.sourceforge.pmd.eclipse.plugin - the actual plugin code
  • net.sourceforge.pmd.eclipse.plugin.test - the (unit) tests for the plugin
  • net.sourceforge.pmd.eclipse.plugin.test.fragment - an example extension of the plugin used during the tests

Debugging

You can run eclipse with debugging enabled and connect to it via remote debugging:

eclipse -data workspace-directory -vmargs -agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=8000

Releasing and updating the official eclipse update site

The update site is hosted on github as a Github Pages site of the repository https://github.com/pmd/pmd-eclipse-plugin-p2-site/.

The release script running on Github 操作 will automatically update the repository pmd-eclipse-plugin-p2-site and add the new release, update the repository metadata (compositeContent.xml and compositeArtifacts.xml as well as index.md) and push the changes.

The release happens in two phases:

  1. Update the repository locally to prepare the new version:
    • Update the changelog
    • Update the versions
    • Create a tag
    • Update the changelog for the next version
    • Update the versions
  2. Push the changes and the tag. The Github 操作 build will then publish the new version on update site and github releases. It will also upload the update site to sourceforge and create a sourceforge blog entry.

Script

See do-release.sh.

Verify, that the zipped update site has been uploaded to GitHub 发布 and sourceforge and that a news blog entry has been created on sourceforge.

Updating the used PMD version

The parent pom contains the property pmd.version. This is used inside the plugin module, to resolve the dependencies. In order to change the PMD version, change this property and rebuild (mvn clean package). In case PMD has some changed (added/removed) transitive dependencies, you'll need to update n.s.p.e.plugin/META-INF/MANIEFEST.MF as well. All transitive dependencies are copied into the folder n.s.p.e.plugin/target/lib during the build.

Useful References

关于

The pmd-eclipse-plugin integrates the source code analyzer PMD into the Eclipse IDE

Topics

Resources

Stars

99 stars

关注者

11 watching

复刻s

发布

Used by

贡献者

Languages