Skip to main content

Notice: This Wiki is now read only and edits are no longer possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

MoDisco/PluginQualityAnalysis

The goal of the Plug-in Quality Analysis plug-in is to check Eclipse plug-ins for violations of a set of rules.

Rules

For now, the following rules are checked:

  • Bundle versions must have a qualifier
  • Package names must start with bundle ID
  • Bundle must contain an about.html
  • Project name must be equal to bundle symbolic name
  • There must not be jars inside plug-ins
  • Source code must use ICU4J classes instead of the following classes: java.text.BreakIterator, java.text.CollationKey, java.text.Collator, java.text.DateFormat, java.text.DateFormatSymbols, java.text.DecimalFormat, java.text.DecimalFormatSymbols, java.text.MessageFormat, java.text.NumberFormat, java.text.SimpleDateFormat, java.util.Calendar, java.util.TimeZone, java.util.Currency, java.util.GregorianCalendar, java.util.SimpleTimeZone, java.lang.Character, java.text.Format, java.util.Locale, java.util.ResourceBundle
  • Bundle name must be equal to "%Bundle-Name" (the way it is internationalized by the PDE "Externalize Strings Wizard") or "%pluginName" (old format)
  • Bundle vendor must be equal to "%Bundle-Vendor" (the way it is internationalized by the PDE "Externalize Strings Wizard") or "%providerName" (old format)
  • There must be a "Bundle-Name" property (or a "pluginName" property for old format)
  • There must be a "Bundle-Vendor" property (or a "providerName" property for old format)
  • There must be at most one Messages.java (message bundle)
  • There must be at most one messages.properties (message bundle)

How to Use

To launch the quality analysis, simply right-click on a plug-in project, and select MoDisco > Eclipse Plugin QA

MoDisco launch quality analysis.png

When the analysis is finished, you should see a new file named smmMeasurement.xmi. This is the SMM model that represents the result of the analysis.

MoDisco quality analysis SMM model.png

The problems detected during the analysis also appear in the Problems view. You can double-click a problem to jump to its location in your source code.

MoDisco quality analysis Problems view.png

Back to the top