The Artima Developer Community
Sponsored Link

Java Buzz Forum
IntelliJ IDEA 6.0 "Demetra": Per-project and per-scope inspection profiles

0 replies on 1 page.

Welcome Guest
  Sign In

Go back to the topic listing  Back to Topic List Click to reply to this topic  Reply to this Topic Click to search messages in this forum  Search Forum Click for a threaded view of the topic  Threaded View   
Previous Topic   Next Topic
Flat View: This topic has 0 replies on 1 page
Alex Tkachman

Posts: 296
Nickname: alextk
Registered: Dec, 2005

Dmitry Jemerov is IntelliJ IDEA developer, JetBrains
IntelliJ IDEA 6.0 "Demetra": Per-project and per-scope inspection profiles Posted: Jan 27, 2006 9:12 AM
Reply to this message Reply

This post originated from an RSS feed registered with Java Buzz by Alex Tkachman.
Original Post: IntelliJ IDEA 6.0 "Demetra": Per-project and per-scope inspection profiles
Feed Title: Dmitry Jemerov's Weblog
Feed URL: http://www.jetbrains.com/rss.xml
Feed Description: IntelliJ IDEA Developer, JetBrains
Latest Java Buzz Posts
Latest Java Buzz Posts by Alex Tkachman
Latest Posts From Dmitry Jemerov's Weblog

Advertisement

This feature is in fact something I promised to blog about quite a long time ago, but after the initial implementation was nearly complete, we decided that we don’t really like the way it turned out, and ended up redoing the feature completely. This post describes the second, reworked implementation – and who knows what changes we will need to do with it based on feedback from users?..

In previous versions of IntelliJ IDEA, the inspection profile was a user’s personal setting; it was possible to export and import inspection profiles, but having a single inspection profile shared between all developers working on the project was quite cumbersome. There was no simple way to propagate the inspection profile changes to all users if the profile was changed after initial configuration. Also, the only way to have different inspection settings in different files of the project was to disable inspections on per-file basis using an icon in the status bar. (In fact, the name for the icon – “Hector the Inspector” – was initially suggested by one of our EAP members, but we liked it so much that we started using it even in the names of classes related to implementing its functionality.)

IntelliJ IDEA 6.0 makes this much more flexible: it is now possible to store inspection profiles in the project file, and the custom scopes mechanism can be used to associate different inspection profiles with different parts of the project.

ProfileInspectionAssignments

As you can see, we have a separate inspection profile for test sources (where the error strictness is much less important), another for the OpenAPI (where JavaDoc errors are highlighted), and yet another for runtime classes which need to be compatible with JDK 1.3 (so all Java 5 features and API methods are forbidden). The scope definition language is very flexible: for example, the OpenAPI profile is defined as “all modules which have openapi as part of the name”.

ProfileEditScopes

We have also made a number of extensions to the scope definition language. For example, it can now apply to files of any type and not only to Java classes, and it supports module groups (so you can define a scope as “all modules in this module group”).

When a new inspection profile is created, you can choose whether it should be saved as your personal profile (IDE profile), or as a shared profile in the .ipr file.

ProfileCreateNew

The status bar now shows the profile which is used to inspect the file currently open in the editor, and provides a quick way to access the profile settings. Note that we have dropped the old possibility to disable inspections on per-file basis: the scopes functionality is much more powerful, and if single-file suppressions are indeed what you need, you can create single-file scopes and associate empty inspection profiles with them.

ProfileHectorDemetra

Read: IntelliJ IDEA 6.0 "Demetra": Per-project and per-scope inspection profiles

Topic: Ensuring Speed and Openness at the Java Community ... Previous Topic   Next Topic Topic: Captcha Spam Blocker Comes To Pebble

Sponsored Links



Google
  Web Artima.com   

Copyright © 1996-2019 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use