This Question is Possibly Answered

1 "correct" answer available (4 pts)
140 Replies Last post: Nov 27, 2010 2:46 PM by lvreplica lvreplica  
Erik Pragt Apprentice 686 posts since
Oct 26, 2004
Currently Being Moderated

Mar 30, 2010 10:28 PM

New IntelliJ Project View Experiences?

Hello all,

 

I already have another thread running on this forum about it, plus 1 or 2 Jira issues, but I was wondering why not more people are complaining about the new project view. How do you work on multiple modules and their dependencies? Why would anyone prefer a list of ALL dependencies of ALL modules loaded in IntelliJ, compared to the IntelliJ 8 dependency-per-module view? I know now that you can also see the depenencies by Pressing ALT+F1, select the project structure, go to the dependency tab, and go through that list on item at a time, since it's ordered by randomness, instead of, say, alphabetically? And if you then want to see if that class you're looking for is really in that library (I didn't know if I was using Junit 4.5 or 4.7 yesterday, which caused some problems for me...), you'll have to close that window, go to the external libraries list (I have around 200-300 libraries there...really manageable, even though they are nicely bound to some modules (at least, in IntelliJ 8) , and then I have to click the library open, find the classes I'm looking for, and then go back to the module I was actually working on. If I can still remember which one that was after going around my IDE in such a way. The philosophy behind this change is that some users complained (in 2005!!) that they didn't understand where their files went, and that therefore the project view should reflect the file structure. (and external libraries, apparently???).

 

I don't know if any of you uses Eclipse, but in Eclipse, you can choose between a Resource view (sort of IntelliJ 9 project view) and a Project View (a sort of IntelliJ 8 project view, but less powerful since it lacks modules/groups). In IntelliJ 9, we'll get the the Eclipse Resource view. My question: do you really want that?? "Nobody" in the Eclipse world even uses the Resource view!

 

In IntelliJ 8, you (could...) see the dependencies of the module in the project view. They are tightly coupled to the module they belong to, and the modules are nicely organized in groups. You cannot be mistaken in which dependency belongs to which module, since it's reflected in the Project View. Also, the list (per module) is around 15-20 dependencies long. This can be easily handled by anyone, since the list is so short. However, when you have around 30 modules (which I have, but usually more, 6 projects, each 4-6 modules) open at the same time, this list can grow to more than 500 dependencies in IntelliJ 9 (around 200-300 in my case because I often depend on the same dependencies).

 

A question to Jetbrains: if you really want to make this change you intend (or already have done), wouldn't it be better to just allow an extra 'view as' option? For example, a 'View as Filesystem', and a 'View as Project Structure' way? I guess that would already solve most, if not all, of my pains......

 

Thanks for reading this rant, but it's been keeping me busy for the last couple of days ;-)

 

Erik

 

PS: I've attached some screenshots again, to show the difference between IntelliJ 8 and IntelliJ 9....

 

PS2: You can track this issue here now: http://youtrack.jetbrains.net/issue/IDEA-53408

Attachments:
Guest
Currently Being Moderated
Nov 11, 2009 2:14 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Hi Erik, thanks for the screenshots. I haven't actually installed Maia

yet as all I've read on these forums so far hasn't exactly filled me

with confidence about it (unstable vcs support, long standing features

disappearing overnight etc.), so it's good to be able to see what you're

talking about.

So let me get this straight... if a module declares a library - via a

dependency - this doesn't get shown under the module in the project tree

any more? But just dumped into a big list with all the others?

This seems just plain wrong to me... I mean, if you wanted it dumped in

a big list you'd have just declared it as a project/global library right?

N.

 

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 11, 2009 2:44 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

I've already talked in the other thread about my problems with the project view, but suffice to say here that this really needs to be provided as an option. While it may work for some people, there are too many problems with the new view to make it compulsory.

 

Cheers,

Colin

Russ  Newbie 69 posts since
Aug 30, 2007
Currently Being Moderated
Nov 11, 2009 4:19 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

I really don't like the big dependencies list either.  My experience has been with Maven projects almost exclusively so I'm not sure how this change affects/bothers users with other setups.

 

When I'm refactoring poms or trying to track down where a dependency is coming from in a multi-module project (usually transitive dependencies)  it was nice to see exactly which modules contained which libraries.  I also have multi module projects where certain artifacts from that are used by other projects (e.g. a client library) and it was nice to be able to do a quick sanity check of the dependencies for that module before publishing a new version so that I can make sure no extranesous dependencies crept in (again, usually transitive dependencies).

 

Since this change I've had to resort to using "dependency:tree" (which isn't terribly easy to read) or using the "Dependency Graph" from the Maven projects view which is nice but still not as convenient as seeing the list in the project view.  Not to mention you can only view one dependency graph at a time this way.

 

I really wish they would bring the old view back.  In your ticket I see they have made responses to their motivation for changing the structure layout but, as you also stated,  I have seen no resonse about the libraries view.

constv  Novice 149 posts since
Nov 8, 2002
Currently Being Moderated
Nov 11, 2009 4:52 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

I really think it is a matter of taste rather than usability, and, perhaps, should be configurable. You can still see the external dependencies per module - in the module settings dialog. I always felt that external lib dependncies tree in the Project view added unnecessary clutter. It would often open "by accident" and create an annecessarily busy look and feel of the Project pane. How often do you need to stare at the list of the dependencies? What's wrong with having to open the module settings once in a blue moon and keeping that clutter out of the way the rest of the time? All problems in software development come from too much clutter and unnecessary complexity. So, as far as I'm concerned, the less clutter the better. But it's just my personal preference, and like I said, it probably should be configurable.  I always use Maven to manage dependencies, and I, personally, put great effort into minimizing module dependencies, de-coupling things as much as I can. So, if I find that I have to spend more than a few seconds weeding through my lib dependency lists, I know I have a modularity problem.

Cheers,

Constantine

Taras Tielkes Apprentice 1,029 posts since
Oct 20, 2002
Currently Being Moderated
Nov 11, 2009 11:31 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

First, I can see your pain, and would support the request for having the

old project structure organization available.

 

When it comes to the subject of seeing the (Maven supplied) libraries

for a specific module, I'm not sure if the project structure is the

appropriate place for that. Neither is the "Project structure ->

Dependencies" tab however..

 

While IDEA provides a maven dependency graph, it's not useful in many

aspects. It would be good to have a specific view/window, that would

provide a maven-centric view of dependencies using a tree component

instead of a graphical graph visualization (which doesn't scale to large

numbers of nodes, for one).

 

Such a view would also be the place for implementing maven specific

actions like "Pull dependency up", "Configure optional dependencies",

"Show dependees (aka reverse dependency view", and many more.

 

-tt

 

Mark Vedder Apprentice 971 posts since
Dec 10, 2003
Currently Being Moderated
Nov 12, 2009 7:26 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Bodiam wrote:

...if this should be an separate screen, or integrated in the main screen, I don't know.

 

Erik

Having it as an alternate maven structure "view" via the "View as" selector in the Project tool window would probably be the best way to go. Interestingly, when you view as "pakages" the libraries are broken up by module. But you are seeing the packages and not the library/jar name.

Guest
Currently Being Moderated
Nov 12, 2009 8:32 PM in response to: Mark Vedder
Re: New IntelliJ Project View Experiences?

Mark,

 

I agree the discrepancy is odd.

 

Grant

 

 

"Mark Vedder" <no_reply@jetbrains.com> wrote in message

news:8276150.215861258043220043.JavaMail.clearspace@app8.labs.intellij.net...

Bodiam wrote:

> ..if this should be an separate screen, or integrated in the main screen,

> I don't know.

> Erik

Having it as an alternate maven structure "view" via the "View as"

selector in the Project tool window would probably be the best way to go.

Interestingly, when you view as "pakages" the libraries are broken up by

module. But you are seeing the packages and not the library/jar name.

>

---

Original message URL:

http://www.jetbrains.net/devnet/message/5249873#5249873

 

 

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Nov 13, 2009 12:42 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Hi,

 

What if I add dependency tree to every Maven project in the Maven Projects view?

The problem with current project representation and dependencies is that there is no dedicated module node and, therefore, no plase to show the dependencies.

In the Maven rojects view, though, I could show not only plain list of dependencies, but also a resove-tree.

 

Thanks,

Anton Makeev

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Nov 13, 2009 2:44 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Thanks for the explanation, Erik,

 

I like the idea with dependencies tree injected into the Project structure, but with the current implementation on the project structure it is not possible: the module can be splitted into sevveral content roots and it is not clear where to show the Libraries node.

 

As for the Dependency Graph, I agree with you that it would be better to add a 'Dependencies' tab to the pom editor. At the moment I cannot implement it since we are close to the release. I'll add the dependency tree to every Maven project node in the Maven Project tool window now and will improve it and add an editor tab after the release.

 

Thanks,

Anton Makeev

Guest
Currently Being Moderated
Nov 13, 2009 2:38 PM in response to: Anton Makeev
Re: New IntelliJ Project View Experiences?

Anton Makeev wrote:

Hi,

 

What if I add dependency tree to every Maven project in the Maven Projects view?

The problem with current project representation and dependencies is that there is no dedicated module node and, therefore, no plase to show the dependencies.

In the Maven rojects view, though, I could show not only plain list of dependencies, but also a resove-tree.

 

Thanks,

Anton Makeev

 

---

Original message URL: http://www.jetbrains.net/devnet/message/5249925#5249925

I'd just like to say that I don't use Maven, so all this Maven talk goes

in one ear and out the other But I'd just like to request that if

any improvements do come of this thread, can they not be specific to

Maven please?

Cheers,

N.

 

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 13, 2009 2:53 PM in response to: Nathan Brown
Re: New IntelliJ Project View Experiences?

Amen - we don't use Maven, but most of the problems with the new Project View are not Maven specific.

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 13, 2009 3:03 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Hi Eric,

 

Yep, I think that looks good. My main problem with the project view at the moment is actually the lack of module groups rather than the dependencies, but I'm sure the dependencies would annoy me too :-)

 

Cheers,

Colin

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Nov 13, 2009 3:32 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

The Module consists of content roots that do not necessary match the module root. There can be several content roots per module and they cen be distibuted across the directory structure; in this case one module will be represented by several directories in different directory branches.

constv  Novice 149 posts since
Nov 8, 2002
Currently Being Moderated
Nov 13, 2009 4:14 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

The longer I read this discussion the more scared I get.

 

Anton, please, whatever you do, do not over-engineer! Seems to me, a lot of guys here are trying to be too smart - instead of, perhaps, focusing on their own jobs. Why not just have an option (a short-cut button, context menu option, key shortcut, etc.) to display the dependencies for the selected module on demand? The dependencies may be displayed in a separate pane that may be floating, fixed, hidden, etc. Something similar to  the Structure pane for the current class. Why does the dependency tree have to be a permanent fixture in the Project structure (the regular Project or Maven pane, doesn't matter)? It just adds more clutter. It should not matter how many content roots a module has. That does not affect the list of the modules' external dependencies.Am I missing something in this conversation? Sounds like way too much ado about nothing.

 

It would also be nice for IDEA to not display any .iml files in the Project tree. Does anyone need to see them? The Package view is much cleaner, but I find the Project view more useful, and use it all the time. I would prefer to see ONLY source and test folders in that view, with the per-module lib dependencies available on demand with a single click - from anywhere. Wouldn't that be the simplest solution?

 

Thanks,

Constantine

constv  Novice 149 posts since
Nov 8, 2002
Currently Being Moderated
Nov 13, 2009 5:14 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

>this discussion is about a piece of functionality which used to work in IntelliJ 8, and is lost in version 9.

Yes, it used to be in Idea 8, and I agree with you that it was better than bundling all dependencies in one pile per project vs. per module. But my point is that there probably is a better and simpler solution anyway - and this discussion is much ado about nothing...I don't want IDEA to be like Eclipse - with too much unnecessary stuff permanently displayed on the screen. Things that I only need to check occasionally should be available on demand. So, while the Idea 8 solution was more logical, it was still often annoying to see and scroll through an accidentally expanded list of external libs while trying to get to your source file. That list opens each time you jump to the source code of a 3rd party class (available or decompiled) and in most cases you just need to take a quick look at the class itself but not at the hundreds of other classes and packages in that library. I often felt annoyed - in Idea 8 or 9 - by my project view suddenly expanding into a list of hundreds of 3rd party classes that I don't care to see. So, removing it alltogether from the project view, to me, would be a logical thing to do. If such thing is still available on demand - with a single click - that should be the only thing we need.

 

>Well, it's already in IntelliJ 8, so it doesn't 'add' anything. But I haven't seen any of your comments stating it's an issue when version 8 was released. So why is it a problem now for you?

See my points above... I never thought that having external dependencies in the project view was adding much, and I only occasionally visit the forum since I have too much work to do.  Once we have touched that subject, I am simply suggesting to find an ultimate solution rather than a partial one.

 

>Source files, and test folders...and ofcourse xml...and velocity templates...and html when working with Wicket, but not when creating a webapp, and images, when they are resources...and property files, outside the source folder. Ah, and an option to see the 'documentation' folder, right?

 

Most of the file types you have mentioned belong either under Resources, or sources. No, the Documentation folder does NOT belong in the project view. There is a way to point IDEA to your javadocs that should be sitting elsewhere, outside your module roots. The module roots are for sources and resource files.

 

And by the way, for those who does not use Maven (and does not want to hear about it), perhaps you should look into it. Maven introduces and encorages universal standards for project/module structure (so you don't have to come up with home-grown crafty solutions that you later realize you can't manage efficiently) and allows your project configurations to be IDE-agnostic! (Unless of course you start putting IDE-specific plug-in dependencies into your maven POMs, which is a bad idea. Eclipse people do that all the time, but, hey, they also include eclipse jar dependencies into their applications! Those crazy eclipse users... )

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 13, 2009 5:27 PM in response to: constv
Re: New IntelliJ Project View Experiences?
And by the way, for those who does not use Maven (and does not want to hear about it), perhaps you should look into it. Maven introduces and encorages universal standards for project/module structure (so you don't have to come up with home-grown crafty solutions that you later realize you can't manage efficiently) and allows your project configurations to be IDE-agnostic!

Please don't start this endless flame war discussion again. Some of us have good reasons for not using Maven (we use Ivy, for example), and that doesn't mean that we're not familiar with Maven, just that Ivy works better for us. In our case it works better precisely because Ivy doesn't force a project structure on us (among other reasons). If you like Maven, great - but it has very little to do with this discussion.

constv  Novice 149 posts since
Nov 8, 2002
Currently Being Moderated
Nov 13, 2009 6:18 PM in response to: Colin Fleming
Re: New IntelliJ Project View Experiences?

Chill. The Maven reference was just a side note, and I don't care if you use Maven, or not. I just mention that - of all things - Maven specifically helps introducing uniformity and sanity to all projects. I often read posts in which people express very peculiar demands for IDEA - to support this or that - only because their project structure is a mess. As for the project view and dependencies, the list of your module dependencies does not depend on what you use. So, I agree, the suggestion to move it into the Maven pane is not relevant.

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Nov 23, 2009 3:26 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Yes, Erik, I've added a dependency tree to every project in the Maven Projects tool windows.

This functionality will be available in the next eap.

 

Thanks,

Anton Makeev

Mark Vedder Apprentice 971 posts since
Dec 10, 2003
Currently Being Moderated
Nov 23, 2009 6:08 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

If I am not mistaken, the new dependency view in the Maven tool window is in 92.24. At least what I am seeing was not in 90.193. See attached screenshot.

Attachments:
Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 23, 2009 9:15 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Erik,

 

Do you really expect any response to this if you're just trying to express your emotions here?

 

If former is true, let's try to come up together with replacement of your use case of maven library list in Project View, since project view now doesn't show any modules (it only shows files and directories, marking content roots of the modules as such visually). To do that please first of all explain it as much details as possible.

 

If latter is true please find another place, it's not welcome here.

 

Regards,

Maxim Shafirov

Moshe Bergman Newbie 5 posts since
Dec 26, 2007
Currently Being Moderated
Nov 24, 2009 12:30 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

I am replying just to say I agree with Erik and I think many also share his view, just some of them do not post on forums or did not try the beta yet.

 

I have no idea why the project view was changed from version 8. It was great. At least give us the option to view dependencies per project (on the project view) and see the project view without the hierarchial view.

Marcus Brito Expert 1,822 posts since
Aug 29, 2002
Currently Being Moderated
Nov 24, 2009 1:56 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Same here. While I don't share Erik's loathe for the new project view, I agree that losing capabilities present in the previous version is sudden and disappointing. Keeping the IJ8 project view as a "Project Structure View" would be a nice compromise, I believe.

Guest
Currently Being Moderated
Nov 24, 2009 2:22 PM in response to: Marcus Brito
Re: New IntelliJ Project View Experiences?

On 24/11/2009 13:56, Marcus Brito wrote:

Same here. While I don't share Erik's loathe for the new project

view, I agree that losing capabilities present in the previous

version is sudden and disappointing. Keeping the IJ8 project view as

a "Project Structure View" would be a nice compromise, I believe.

>

--- Original message URL:

http://www.jetbrains.net/devnet/message/5250798#5250798

+1

 

N.

 

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Nov 24, 2009 3:11 PM in response to: Marcus Brito
Re: New IntelliJ Project View Experiences?

+1  I can still work with the Maia project view, but it was much clearer and easier to use in IDEA 8 where the module dependencies were associated with their module. I think lumping them all together has been a major step backwards - I have a project with a server module and a client module and I can't see which libraries are used by which module without opening the modal Project Structure window. I now use a paper copy showing which module has what libraries... crazy.

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 24, 2009 3:43 PM in response to: Marcus Brito
Re: New IntelliJ Project View Experiences?

+1

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Nov 30, 2009 7:46 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

I don't really know what 'new solution' you are referring to - this thread has become very long and I haven't kept up with every contribution (I wish JetBrains would use more user-friendly forum software that allows an outline view of a thread and configurable ordering, e.g. MyBB or vBulletin).

 

I would be happy with the option to use a version 8 style project view, or alternatively, an additional structure view (like the class structure view) that sits on the left below the project view and shows the dependencies of the module currently selected in the project view.

 

As long as I can see the module dependencies (especially library files) in a non-modal view that doesn't interrupt my editing, I'll be happy.

Dmitry Jemerov Master 12,520 posts since
Aug 19, 2002
Currently Being Moderated
Nov 30, 2009 9:16 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Hello Erik,

 

I still don't know why JetBrains either:

1) bring back the old project view + use the current project view as a

'resource view' or something

 

Because adding an option is the worst possible solution to any UI design

problem.

 

or

2) bring back the old project view and don't hide the files which

you'd expect

 

Because every file must be displayed in just one place in the project view.

 

or

3) bring back the old project view and ask if those issues from the

year 2005 are still relevant.

 

Because nothing changed in this respect since 2005, and the issues are as

relevant as they were.

 

--

Dmitry Jemerov

Development Lead

JetBrains, Inc.

http://www.jetbrains.com/

"Develop with Pleasure!"

 

 

 

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 3:55 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Erik,

I've just asked for the use cases and got no answer so I'll try to guess if my understanding is correct and you'll correct me if I'm wrong, OK?

 

So, you need to *view* what particular libraries given module depends on. This kind of information is available in Project Structure but that's modal and not easily accessible.

This kind of information now present in Maven view but modules are somewhat deep in tree hierarchy there and you used to find modules in Project View easier. Correct?

 

My suggestion is to display dependency information in Structure View for the module, which content root is displayed currently in Project View. These two toolwindows can be displayed simultaneously at the IDE left so no screen waste happens. Would that work? What do you think?

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Nov 24, 2009 4:42 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

Maxim, are you suggesting a second (Module) Structure view, alongside the current (Class) Structure view?

 

If so, I could live with that - it wouldn't be practical to have all three open at once when docked, but if all three were required at once, one or more could be undocked.

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 4:51 PM in response to: Dave Lorde
Re: New IntelliJ Project View Experiences?

Dave, I was thinking about reusing same structure view we use for class structures. I.e. when focus in project view and module directory is selected structure view shows dependencies of the module. When class or file is selected in project view or file editor is active same view shows structure of the class/file.

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 5:28 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

> if I understand correctly. Please take a look at the screenshot

Yep, this is exactly what I mean

 

> automatically navigates to the dependency when clicking on a class in the dependency

Having in mind many modules can depend on certain library (say, JUnit) random module's Library node will (in 8th) be opened. I would hardly agree this adds to clear understanding what belongs to where and depends on what.

 

> I still can't reference directories with modules outside my project and make them look like they are in my current project

I don't get what you're saying here. Probably we're talking using different terminology?

 

> External Libraries

Actually, this node shows libraries, which have their jars located outside any module's content root (which appears to be the way Maven works, unfortunately). In our (IDEA) project, for instance, we have all the libraries stored in version control under lib folder so that's where I'll now find them in Project View.

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Nov 24, 2009 6:56 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Hi, Erik,

 

You wrote

> If I have 2 times version 4.5, and two times version 4.6, They will end up two times in the external dependencies, but I have no idea which modules uses which library.

 

That is not the case, since Maven libraries are configured as project libraries and shared across modules. If you have dependencies on junit 4.0 from several modules, you'll see only one library in the External Libraries.

 

What you are describing are two use cases.

First, you need to see that are the dependencies of a particular module, and, as Maxim suggest, you could see them in the Structure View.

Second, you want too see, for instance, where some class is located and that are its neighbours; you can use good old Select In Project View - the library in the External Libraries will be selected and expanded, showing the content.

 

These are really separate tasks and probably it will be easy to get used to and convenient to use  Structure View for list dependeices and External Libraries ro browse classes in a library.

 

What do you think?

Moshe Bergman Newbie 5 posts since
Dec 26, 2007
Currently Being Moderated
Nov 24, 2009 7:08 PM in response to: Anton Makeev
Re: New IntelliJ Project View Experiences?

Hello Anton,

 

I have no idea where you get the idea that maven has the concept of "project dependencies".

 

Maven has pom.xml that are either parent pom or built into some kind of artifact (jar, swf, war).

 

When saying "project dependencies" - are you refering to parent pom? In that case it works by having the children inherit those dependencies. The children can also add dependencies of his own. We have the unit testing frameworks in the parent pom but other then that, all other dependencies are in the module pom.xml

 

So even those use cases where you have parent pom you can still read it as every module have these and have dependencies on a module level and remove the whole "project dependencies concept" that was added.

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Nov 24, 2009 7:27 PM in response to: Moshe Bergman
Re: New IntelliJ Project View Experiences?

Moshe,

 

I didn't say 'project dependencies', it was 'Project Libraries' that is an IDEA's term.

All maven dependencies are configured as Project LIbraries to allow them to be configured in one place.

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Nov 24, 2009 7:59 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

>>That is not the case, since Maven libraries are configured as project libraries and shared across modules. If you have dependencies on junit 4.0 from several modules, you'll see only one library in the External Libraries.
>>What you are describing are two use cases.

 

>This is not true. If I have a class (say HomePage.java), I cannot use the Hibernate classes. These hibernate classes are not a project library, they are connected to a module. But maybe a module for me is a project for you, I'm not sure.

 

Please read about types of libraries in IDEA so that we could use and understand the same terminology (hope that doesn't sound offensive 8):

http://www.jetbrains.com/idea/webhelp/libraries.html

 

 

> I think that I need to show you how my dependencies work, and how I develop. Is it possible to chat about this? In a last attempt, I've created a screencast. Can I upload it somewhere?

 

Yep, mail me at Anton(dot)Makeev(at)jetbrains(dot)com.

Actually I understand you and the problem. The point is that there are aspects of InteliJ and project possible configuration because of that we haven't come up a straightforward solution yet.

Taras Tielkes Apprentice 1,029 posts since
Oct 20, 2002
Currently Being Moderated
Nov 25, 2009 2:18 AM in response to: Anton Makeev
Re: New IntelliJ Project View Experiences?

Hi Anton,

 

It would also be useful to hear a well-formulated description of that motivated these changes from Jetbrains side.

The change in library presentation in the Project view is not just a simplification, it removes essential visual grouping (from library to module).

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 25, 2009 2:50 AM in response to: Taras Tielkes
Re: New IntelliJ Project View Experiences?

Agreed. I'd make the same argument about the module groups, too - it removes what is for us a vital project organisation tool. I'd be interested in hearing more about the reasons for the change too.

 

Cheers,

Colin

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 24, 2009 5:27 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

Hi Maxim,

 

Somewhat related to this, as detailed in the other thread about the project view the main loss for me would be the loss of module groups. We have a very large project and we have our modules in a single directory. Previously we organised them using module groups but they've disappeared from the Maia project view. Dmitry replied (http://www.jetbrains.net/devnet/message/5249471#5249471 ) suggesting that I reorganise our project, but that's not really an option for me and it seems crazy to have to reorganise our project just because some functionality has been removed. Is there any way they could be put back?

 

Cheers,

Colin

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 5:31 PM in response to: Colin Fleming
Re: New IntelliJ Project View Experiences?

Hi Colin,

 

> Is there any way they could be put back?

I can't see how this could be done. I.e. mixing directories and module groups nodes is not an option.

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 24, 2009 8:12 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

Hi Maxim,

 

I must admit I've not used v9 enough to be able to judge this (I use it at home, but always on much smaller projects, and often not in Java). Could you display modules as tree nodes (with groups), and when the modules are expanded show the directories representing content roots, source folders etc under that, as well as the libraries used by that module? It seems like the main confusion for people from the YouTrack JIRAs was that not all folders were displayed in this view, maybe this would help?

 

Cheers,

Colin

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 8:18 PM in response to: Colin Fleming
Re: New IntelliJ Project View Experiences?

Colin,

 

Is that true all of your module's content roots don't dominate each other? I.e. none of the content roots physically, in a file system sense, contains another?

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 25, 2009 2:48 AM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

Hi Maxim,

 

In our case, that's true - I actually didn't think IntelliJ even allowed that.

 

Cheers,

Colin

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 25, 2009 8:37 PM in response to: Colin Fleming
Re: New IntelliJ Project View Experiences?

Well, what we've been doing is optimizing very different case, very modules nest each other (IDEA project itself is configured that way, there's only one top level umbrella module). Old project view used to exclude nested module's content root and move it to the top level. These leads to very unpleasant experience walking through the file structure where can't find certain directory, while you're absolutely sure it must be there.

 

Anyway, in nearest EAP a compromise structure for project view is implemented: top level modules are shown at top level or grouped into module groups if there are any but nothing is excluded from their contents and nested modules appear inside parent's module file structure instead of top level.

 

Hope everyone will like it.

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 25, 2009 8:58 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

Hi Maxim,

 

That sounds great, for our use case at least. I'll give it a try when the next EAP is out. Thanks!

 

Cheers,

Colin

Guest
Currently Being Moderated
Nov 25, 2009 9:14 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

Good to see some progress on this issue.

Cheers,

N.

 

Taras Tielkes Apprentice 1,029 posts since
Oct 20, 2002
Currently Being Moderated
Nov 25, 2009 2:23 AM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

What about making this a choice (eg not allowing mixing)?

Moshe Bergman Newbie 5 posts since
Dec 26, 2007
Currently Being Moderated
Nov 24, 2009 5:57 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

I never use the project structure view so this solution will not work for me. I don't understand why not just put what you had in version 8 back into the IDE?

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 6:19 PM in response to: Moshe Bergman
Re: New IntelliJ Project View Experiences?

I don't get why pressing Alt+7 when you need to view dependencies and pressing same once again when you no longer need it may be a problem.

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 6:35 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Alt+7 shows structure view, where you'll be able to browse library classes once I'll be able to stop chatting and go back to work.

Moshe Bergman Newbie 5 posts since
Dec 26, 2007
Currently Being Moderated
Nov 24, 2009 6:37 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

You can go and work on whatever you want. But don't say we agreed that this change is any good or solves the problem, because we didn't.

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Nov 24, 2009 6:47 PM in response to: Moshe Bergman
Re: New IntelliJ Project View Experiences?

Indeed, the only response I hear is "get it back where it was" stuff. But it isn't very productive in finding the way out and coming up with an instrument everyone will find useful, clear and consistent.

Anyway, hopefully implementing "structure view" dependency viewer wouldn't take long so let's return to the topic when it is done so you can objectively use it and say if you like it or not.

constv  Novice 149 posts since
Nov 8, 2002
Currently Being Moderated
Nov 28, 2009 7:14 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

I just wanted to say that I really like the solution implemented in the latest build - IU-92.65. Hope this puts an end to this [ridiculous] heated discussion. Now everyone who can't live without seeing a permanent list of module-specific external libs in their project view can have a pleasure of viewing it all day long in the Structure pane that can be made visible and docked in the same column as the Project view. The content of the Structure pane shows the external library dependencies for the currently selected module in the Project view and changes dynamically as you select another module. Seems very logical and organized. Great job, Maxim! Thanks.

 

By the way, for the rest of us - those who actually spend more time working with their source files rather than gazing at the lists of jars - perhaps, at some point, it would be nice to be able to hide (via configuration) the global "External Libraries" and .iml files (or any type of non-source files) from the Project pane all together?

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Dec 2, 2009 7:56 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Perhaps (probably) I'm being stupid here, but I've installed IU-92.65, and the Structure view still shows the structure of the file being edited - how do I get it to display the module dependencies?

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Dec 2, 2009 8:05 PM in response to: Dave Lorde
Re: New IntelliJ Project View Experiences?

You probably have your structure view floating. This is known problem http://youtrack.jetbrains.net/issue/IDEADEV-41796.

Russ  Newbie 69 posts since
Aug 30, 2007
Currently Being Moderated
Dec 2, 2009 8:24 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

While that may be the issue Dave is referring to the way I interpreted it is that the only time you can see module dependencies in the structure view is when the module is selected in the project view.  The moment you edit a file the structure view changes to the structure view of the file.

 

In other words, using the structure view solution it is not possible to view the module dependencies when editing a file.  It is also not possible to see the module dependencies of more than one module at a time.

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Dec 3, 2009 2:25 PM in response to: Russ
Re: New IntelliJ Project View Experiences?

So I have to Close All Editors in order to see the module dependencies? and this is supposed to make life easier?

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Dec 3, 2009 3:27 PM in response to: Dave Lorde
Re: New IntelliJ Project View Experiences?

Nope, you have to select module node in project view.

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Dec 3, 2009 3:49 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Yes I do

Russ  Newbie 69 posts since
Aug 30, 2007
Currently Being Moderated
Dec 3, 2009 6:39 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

I find it to be a bit awkward because the nature of the structure view is to show the structure of what currently has focus.  For example I click on a module and I see its library dependencies - great.  Then, say, I navigate into one of the dependencies and open up a source file from one of them.  Bam - my stucture view now changes to the structure of the newly opened file and I would have to go back into the project view and select my module again in order to view the library list.  And then the libraries tree is now collapsed again.

 

Once the file is opened I can Alt-F1 | Project View and start navigating the dependency jar from there (in the External Libraries) but again it's just awkward and doesn't really follow my train of thought.

 

That being said I may be able to get used to it.  One possible improvement:  Would it be possible in the structure view under "Module Dependencies" to show the library dependencies of those modules rather than the file structure?  That would at least make it possible to view more than one dependency list at a time.

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Dec 3, 2009 3:54 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

Well after some experimentation, I've found that the Structure View doesn't change if I select the module node itself, but it does change to show the library dependencies if I select any source root below the module node.

 

OK, that's a bit strange, but it does the job.

 

Thanks Maxim, that's what I need.

Maxim Shafirov JetBrains 5,025 posts since
Oct 12, 2001
Currently Being Moderated
Dec 3, 2009 3:59 PM in response to: Dave Lorde
Re: New IntelliJ Project View Experiences?

That's weird. Can I please have a screenshot? What build you're using BTW?

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Dec 3, 2009 4:51 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

I've been using IU 92.65, but because it keeps falling over with core errors and now the menus are messed up because I removed the CVS options from the Version Control menu (see my other bug report thread), I've decided to try IU-92.81.

 

If the Structure View does the same in the latest version, I'll post a screenshot.

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Dec 3, 2009 6:42 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

OK, after I installed IU-92.81, when it tried to open my existing project, it complained that there were lots of project variables undefined, and displayed a dialog full of what looked like script fragments that it thought were project variable names. I closed the project and restored the project files from a monthly backup, but the same thing happened again when I opened it.

 

So I assumed the project was corrupted, and recreated it from scratch (nice job on automatically recognising modules, libraries, and dependencies, btw). After all that, the new project displays module dependencies when the module node is selected in the project view, as expected.

 

Personally, I like this new dependency view - although my personal choice would be to have a separate view for the dependencies alongside the structure view. But I can happily live with them combined in a single view.

 

Thanks for listening

 

Of course, no sooner have I installed IU-92.81 then you guys churn out another release - I'm having trouble keeping up here!

Dave Lorde Apprentice 570 posts since
Aug 21, 2002
Currently Being Moderated
Dec 3, 2009 2:23 PM in response to: Maxim Shafirov
Re: New IntelliJ Project View Experiences?

No, it isn't floating.

constv  Novice 149 posts since
Nov 8, 2002
Currently Being Moderated
Dec 19, 2009 12:00 AM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Constv, how can you work professionally with software without looking at your dependencies? I hope you'lll spend a little more time on using and and see if the 'see it all day' is really true. I've used IntelliJ for an hour now, and yes, sometimes I see the module dependencies. Usually I don't. So thanks for the hard work, but a shame it's implemented like this.

Ha, just noticed this stab at me from a while ago... (Finally had time to drop by this forum after a few weeks.)  Well, I guess I am not as profesional as you are, or some other real "pros" who have time to hang out in forums for months. Not that it has anything to do with this discussion, but I have been successfully building commercial systems of various levels of complexity - using IntelliJ, specifically, since 2002 - for many years now. I do this for a living, as a free-lance consultant, and get gigs based on references and good results. I can't afford doing a sloppy job.  Now, to answer your specific question: yes I do check my module dependencies every now and then, and, surprisingly, I don't find it necessary to do it very often. I never bring my projects to the point when I have to weed through them for hours trying to figure out what is what. The key for me is to have a meaningful project configuration with minimal dependencies. Elegant project configuration and structure is as just important to me as elegant code.  Yes, from time to time I keep the dependency tree expanded for a particular module in the Maven pane - e.g. to see if everything gets properly updated as soon as I change the POM file source code. But, believe it or not, I don't very often use the dependency tree in the Project pane to do the things you describe.

constv  Novice 149 posts since
Nov 8, 2002
Currently Being Moderated
Jan 8, 2010 10:21 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Erik, sorry for taking a long time to answer your question. I haven't stopped by the forum until today. Of course, I monitor dependencies. However, I find that I prefer to see the dependency tree in a separate pane, not in the same place with my "editable" sources. Since I have been using Maven for years now - on every project - since before version 8, I have been using the Maven pane for that purpose. As you know, the Maven pane lists individual modules inside the project, and each module tree may be expanded to show the maven goals + dependencies, on the per module basis. At the same time, you have all module nodes in the same view, so you can scroll up and down the whole project to see which module has which dependencies. This is, basically, what you want, as I understand. Except, your point has been to keep those dependency trees together with the editable sources in the Project View. I agree that it is definitely better to split dependencies by module, and, ideally, to have the complete project dependency tree (with module sub-nodes) available in a single view. Those who use Maven already get that inside the Maven view. However, not everyone uses Maven, of course. However, my point is that it is probably not very "clean" and somewhat cluttering to mix editable project sources with the JAR libs in the same view. For the very reason you mention: some people tend to accumulate way to much clutter in their sources anyway, so, I welcome any opportunity to clean things up, e.g. by separating things that may be logically different. I believe, editable source and JAR dependencies should be separated. That does not mean that there shouldn't be an easy way to "jump" to "all things this module" at any given time. Perhaps, there may be a right-click menu item "Show Current Module Dependencies" available at any time (in the editor) that would open the Dependencies view with the current module expanded. But there is no reason why the libs must be in the same tree view with the sources.

 

I think that ideally, it would be great for everyone if there were a separate view "Dependencies", or "Libraries", that would show only the tree of the project's dependencies - with each module displayed as a separate node under the Project root. In other words, it would be similar to the current Maven view, without the maven targets, just the libs.

 

So, that would be my choice. I guess, my point all this time has been: avoid mixing sources with the libraries, keep the Project view for sources only (it is a useful alternative to the Packages view b/c you most often want to see your folder structure and non-Java files) and provide a separate convenient Dependencies View where the libs are also sorted on the per module basis. (And since the Maven pane provided me with just that, I, for the most part, rarely found any need to weed through the libs in the project view.) Make sense?

Moshe Bergman Newbie 5 posts since
Dec 26, 2007
Currently Being Moderated
Nov 29, 2009 11:53 AM in response to: constv
Re: New IntelliJ Project View Experiences?

I also tried the new EAP:

 

Moving the module to the top level is better for me, since I have few modules.

 

However the fact that dependencies are not yet like they were in version 8 still does not solve anything. I usually not use the structure view. I keep it closed so I have more space for the project view. If I move it to the right side, it competes with the maven screen on the same space.

 

I think the place for dependencies is on the project view. Since once you are on a source file, the view that can stay synchronize to your location is the project view. So it makes much more sense to have the dependencies on the same place. (if you see error for dependency on the current file, you can jump to the dependencies to see the cause)


Anywhere else the dependencies will be placed will be less user friendly. And I don't see why instead of doing the right thing you put the dependencies in maven and structure where it does not belong.

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 30, 2009 2:58 PM in response to: constv
Re: New IntelliJ Project View Experiences?

I've been pretty busy so I didn't get long to play with this, but here's my thoughts:

 

1. Our main use case (module grouping) is fixed - this was my main complaint.

 

2. I agree with Erik that the dependency view is, well, strange. I think it overloads the structure view pretty heavily, and the fact that you can only see dependencies for one module at a time and then only when you have the module selected is not very intuitive or ergonomic. I guess I have trouble visualising how nested modules would work, so I still don't really understand what the problem with having this in the actual project view is - intuitively, that seems like the place for that information. I don't think this would be a huge problem for me but I can't really see it as a positive change.

 

3. I asked around our office a bit, and nearly everyone (except me, now I feel like I've been missing out) used Alt-F1 (open in project view) on a library class to jump to the library in the project view and see which library and module that class was actually being obtained from. How would this work in the new view? It'll just jump to the long dependency list, and I won't be able to tell which module is actually providing it, is that right? Is there some way they could achieve the same effect?

 

constv wrote:

By the way, for the rest of us - those who actually spend more time working with their source files rather than gazing at the lists of jars - ...

 

If you're concerned about the quality of the "ridiculous" discussion you could always try contributing to it by not being sarcastic and inflammatory. But I agree that a checkbox to hide "virtual" artifacts from the project view might work well. The best compromise I can think of would be to display dependencies etc under the module in the project view as Idea 8 did, and be able to hide them if required (probably with a button like the "flatten packages" etc ones). But then you're pretty much just going back to the v8 way of doing things with an extra option.

 

Maxim, can you explain a bit the rationale for this change? I don't understand how it helps the nested module case (i.e. the case of how you develop IDEA itself). From what I saw in IDEA-25835, you added links to IDEA-872 & IDEA-3556 as examples of what people found confusing, but they were both a very specific case - it sounds like when a directory was added to the classpath it was hidden from the module view and places under the Libraries node. It seems like simply fixing that case might be easier than a wholesale change in how the project view works.http://youtrack.jetbrains.net/issue/IDEA-3556

 

Cheers,

Colin

Mark Vedder Apprentice 971 posts since
Dec 10, 2003
Currently Being Moderated
Nov 30, 2009 8:30 PM in response to: Colin Fleming
Re: New IntelliJ Project View Experiences?

I would agree with Colin's main point. While the new solution does provide (some) module grouping of dependencies, the solution is not very intuitive or user friendly. The primary use case where it fails is that of simple module dependency comparisons. This is not necessarily something you do 8 hours a day. But it is something you might do a couple of times a day depending on where you are in a project's life cycle. And when you need to fo it, it needs to be simply and intuitive so as to not derail your train of thought. Here are some example use cases:

 

1) Legacy Applications
We are often called upon to either support or update a legacy application. These applications were written when most developer's thought Java was something you got at Starbucks. Ant and Maven were not even twinkles in their creators eyes yet. Even the more "modern" applications that use Ant or a shell script lack any sort of true dependency management.  When working with these applications, the first thing you try and do is to organize them better (i.e. modularize), get them into a build system, remove unused dependencies, and consolidate used dependencies. This results in the frequent need to compare and contrast the dependency graphs of various modules while editing the build files (build.xml or pom.xml). This could be done in IDEA 8. But cannot be done in 9, even with the new solution.

 

2) Early stages of an application

During the early stages of application development, you are still flushing out how you want to organize/modularize your application. Dependencies get add, removed, and moved frequently. Being able to compare them quickly is very necessary. Think Agile.

 

3) General inter-team development

When working on a module, I decide I need to use the xstream API. When I go to add it, I first want to see if any other modules -- which I am not responsible for and therefore not very familiar with -- are using it so I can decide whether to declare the dependency in my module, or at a higher level. And if it is needed at a higher level, I need to determine how high. Granted this use case can be done to a degree with the new view in the Structure tool window, but it is cumbersome, especially since I cannot see the dependencies listing while editing the build file.

 

4) Refactoring & project cleanup

Every so often it is desirable to cleanup a project. Part of this is removing duplicate dependencies from child modules and placing them into a higher level common parent module. Being able to see the dependency tree of multiple modules when doing this is paramount. This process is often done to catch things that were not caught when doing # 1, 2 or 3 above.

 

5) Use of shared modules

As Erik pointed out above, it is not uncommon to have a module, or group of modules, that is shared by multiple projects. Having the ability to easily compare and contrast modules' dependency set in such a case is imperative.

 

6) Quick finding of dependency ownership

I also, like Colin's coworkers, use Alt+F1 to fine the dependency's placement. In IDEA 8 I could see what module it belonged to. In IDEA 9, I cannot. This, IMHO, is a huge loss of functionality.

 

 

If the view from IDEA 8 cannot be returned, can a new view under the Project tool window's "View As" drop down be added? A "dependency Tree" which shows the dependencies broken down by modules. The "packages" view currently does this. So I would have to assume it could be done for a dependency list. Colin's suggestion of a toggle to turn the viewing of dependencies on and off might also be useful.

 

I have not followed this thread in its entirety. But it seems the primary difference of opinions come from the simple fact that different people organize there projects differently. The two primary areas of differences are 1) Whether the file system or the build tool provides the primary structure. 2) And whether the project uses a hierarchical or a flat structure. There is then some intersection between the two points as people set up there projects. The bottom line is that all of these methodologies, whether we personally agree with them or not, are in high use. IDEA, being a premiere IDE, needs to support all of them, IMHO.

Mark Vedder Apprentice 971 posts since
Dec 10, 2003
Currently Being Moderated
Nov 30, 2009 8:46 PM in response to: Mark Vedder
Re: New IntelliJ Project View Experiences?

I did just realize that for #6, Alt +F1 > Project > Packages can be used as an alternative. It at least tells me what module the dependency is in. But not which actual dependency (i.e. jar). And for APIs that break down their distributable into multiple jars, like Spring, that ends up being basically useless.

 


Dmitry Jemerov Master 12,520 posts since
Aug 19, 2002
Currently Being Moderated
Nov 30, 2009 8:52 PM in response to: Mark Vedder
Re: New IntelliJ Project View Experiences?

Hello Mark,

 

6) Quick finding of dependency ownership

I also, like Colin's coworkers, use Alt+F1 to fine the dependency's

placement. In IDEA 8 I could see what module it belonged to. In IDEA

9, I cannot. This, IMHO, is a huge loss of functionality.

 

Sorry, I don't quite understand this use case. At least in our projects,

a library is typically used in multiple modules. Pressing Alt-F1 in IDEA

8 brings you to one of the modules using the library, chosen essentially

randomly. In IDEA 9, there's no random choice - you get to where the jar

file locates on disk, with no ambiguity.

 

If you need to find out which modules use the library, you can do this in

the same way in both IDEA 8 and 9. Press Select In | Project Structure, then

press Alt-F7 on the library node to see the list of modules using it. Again,

there is no ambiguity.

 

--

Dmitry Jemerov

Development Lead

JetBrains, Inc.

http://www.jetbrains.com/

"Develop with Pleasure!"

 

 

 

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 30, 2009 10:04 PM in response to: Dmitry Jemerov
Re: New IntelliJ Project View Experiences?

You're right, having tried it (I never really used this much) it seems pretty useless. I asked my co-workers, they said they use it generally when there's only a single copy of the library as a form of cheap navigation, which doesn't seem like a use case worth saving.

 

BTW Alt-F7 doesn't work for me on a library in the project view - should that work in IDEA 8?

 

Cheers,

Colin

Dmitry Jemerov Master 12,520 posts since
Aug 19, 2002
Currently Being Moderated
Nov 30, 2009 10:07 PM in response to: Colin Fleming
Re: New IntelliJ Project View Experiences?

Hello Colin,

 

BTW Alt-F7 doesn't work for me on a library in the project view -

should that work in IDEA 8?

 

It works not in the Project view, but in the Project Structure dialog. I

guess we could make this work in the Project view as well, but it's not supposed

to work right now.

 

--

Dmitry Jemerov

Development Lead

JetBrains, Inc.

http://www.jetbrains.com/

"Develop with Pleasure!"

 

 

 

Mark Vedder Apprentice 971 posts since
Dec 10, 2003
Currently Being Moderated
Dec 1, 2009 2:47 AM in response to: Dmitry Jemerov
Re: New IntelliJ Project View Experiences?

Hello Dmtry,

At least in our projects, a library is typically used in multiple modules.

That's simply not the case for us. Our libraries are kept separate. Why, for example, should JGoodies Forms be included any module other than the UI module. And even then, only within the Swing sub-module and not the Web app sub-module. When I build the data conversion module, to be used in other projects or as a standalone component, I certainly do not want a bunch of extraneous UI jar files included. Especially since the data conversion is server side and the UI is client side. In turn, why should the UI module have Xerces & Xalan in it when it does not do any XML work? That's handled by the data conversion module. These modules need to stay self contained so they can be used in other applications (i.e. projects) with minimal dependency needs. The easiest analogy I can think of is it would be like asking why doesn't Apache commons keep all the dependencies for all commons projects in a single place.

 

Pressing Alt-F1... In IDEA 9, there's no random choice - you get to where the jar file locates on disk, with no ambiguity.

The assumption there is that the jar exists within the project's file structure.  In our case, there would be nothing but ambiguity since the jar is in either a global lib directory or a repository. This can be the case for Maven, Ivy, Ant, and IDE configured projects. We do not, and basically are not allowed to, keep dependencies in source control. I know this policy is not uncommon within other organizations. Therefore putting them within the project's structure is not possible. Even if it was, I do not know as I would organize my project in such a way. Even so, in the end, it is not always my choice. At my company, you work with a different group of people from project to project. Sometimes you are a lead, other times a minion. For most new projects I am involved with, I push for using Maven. This alleviates some of the problems. But in the end, I am sometimes at the mercy of the team or person that set up a project; especially when dealing with legacy projects. In some cases you take over a prototype or proof or concept done by someone else where "get it out fast" was the driver, not maintainability. Finally, dependency management and project organizational skills, philosophies and ideologies differ greatly among people. On some projects I need to use IDEA to impose structure on an otherwise chaotically "organized" project. Once I have that structure imposed, I depend on IDEA to help me understand that structure. Alt+F1 was a consistent and quick way for me to see what module a dependency was defined in.

 

If you need to find out which modules use the library, you can do this in the same way in both IDEA 8 and 9. Press Select In | Project Structure, then press Alt-F7 on the library node to see the list of modules using it. Again, there is no ambiguity.

That's a valid point. In some cases this will provide a level of precision, i.e. lack of ambiguity, that is useful. So this could be used in place of Alt+F1 in some cases. But I do not believe, IMHO, it resolves the other situations where you want a simple graphical tree view of your project's structure.

 

 

Thanks & Best Regards,

Mark

Taras Tielkes Apprentice 1,029 posts since
Oct 20, 2002
Currently Being Moderated
Nov 30, 2009 8:57 PM in response to: Mark Vedder
Re: New IntelliJ Project View Experiences?

Apart from all these points, the way that IDEA 8.0 shows dependencies in the project view is quite similar to Eclipse and NetBeans.

 

While being similar should never be an explicit feature, diverging too far from what people are used to creates an additional hurdle for 'switchers'.

 

-tt

Dmitry Jemerov Master 12,520 posts since
Aug 19, 2002
Currently Being Moderated
Nov 30, 2009 9:05 PM in response to: Mark Vedder
Re: New IntelliJ Project View Experiences?

Hello Mark,

 

I would agree with Colin's main point. While the new solution does

provide (some) module grouping of dependencies, the solution is not

very intuitive or user friendly. The primary use case where it fails

is that of simple module dependency comparisons. This is not

necessarily something you do 8 hours a day. But it is something you

might do a couple of times a day depending on where you are in a

project's life cycle. And when you need to fo it, it needs to be

simply and intuitive so as to not derail your train of thought.

 

We actually already have a feature which is much better suited for this task,

and the feature is Analyze Module Dependencies. Currently it doesn't show

libraries, but it's something that can easily be added. Other than that,

it's a nice fit - it's non-modal, and you can open several tabs for different

modules and switch between them easily.

 

Should we bother implementing that, or will "bring the things back as they

were" will still be the only answer we'll get?

 

--

Dmitry Jemerov

Development Lead

JetBrains, Inc.

http://www.jetbrains.com/

"Develop with Pleasure!"

 

 

 

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Nov 30, 2009 10:33 PM in response to: Dmitry Jemerov
Re: New IntelliJ Project View Experiences?

We actually already have a feature which is much better suited for this task,

and the feature is Analyze Module Dependencies. Currently it doesn't show

libraries, but it's something that can easily be added. Other than that,

it's a nice fit - it's non-modal, and you can open several tabs for different

modules and switch between them easily.

 

Nice, I actually wasn't aware of Analyze Module Dependencies (or at least, that you could use it for individual modules, I've used it once or twice project-wide). I think the main thing it wouldn't allow you to do is see the libraries used by two modules at the same time for comparison, I'm not sure how much of a problem that would be.

 

Should we bother implementing that, or will "bring the things back as they

were" will still be the only answer we'll get?

 

I don't think it's true that that is the only answer you've had. This thread has been more heated than it should be from time to time, but changing the project view is a major change to one of the most-used parts of IDEA, and particularly removing (or drastically changing) functionality that people rely on is always going to be controversial. My main gripe (module groups) has been fixed so I'm happy, but that would have been almost enough to prevent my company upgrading to IDEA 9 - it would have made our project unmanageable (whether our reasons are good or bad is another argument, but it's not something I can change).

 

I think particularly it hasn't been well explained why the library change is necessary - it seems like it's essentially because of several implementation details (modules no longer have a node representing them uniquely in the content tree, and that the Maven integration adds libraries to the project rather than the module) rather than it not conceptually making sense to show them there. We always add our Ivy dependencies to the module, so for us it makes sense to have them in the project view associated with a module and that's how I think of them being located.

 

Either way, the EAP process is here for to you to gain feedback and for us to provide it, and I think sometimes "it worked better for me before" is totally valid feedback. Like I say, what is in there works for me now but it's not an improvement, for me at least.

 

Cheers,

Colin

Mark Vedder Apprentice 971 posts since
Dec 10, 2003
Currently Being Moderated
Dec 1, 2009 2:52 AM in response to: Dmitry Jemerov
Re: New IntelliJ Project View Experiences?

I would love to see libraries added to the Dependency Viewer. I have frequently found the dependency viewer to not be very useful in situations where I am concerned with Libraries and not packages (or classes). There's basically too much detail and you can not see the forest for the tress. Having a Libraries view would be awesome. It wold be useful in many situations.

 

 

Should we bother implementing that, or will "bring the things back as they were" will still be the only answer we'll get?

I'm not sure if this question was directed at me, or to the group as a whole. In the case of the former, I apologize if I some how gave you the impression that I was not open or agreeable to a discussion of alternative solutions. Or that somehow I implied that I would only be satisfied by bringing back the old version. That was in no way my intent. I would have hoped my offering some alternative solutions, such as the alternative view in "View As", would have demonstrated that. I know some of the discussion in this thread has gotten a bit emotional at times. However, I do not believe I personally have in any way contributed to that unfortunate occurrence. In the end, my only goal is to assist JetBrains in continuing to make IDEA the best IDE there is.

Guest
Currently Being Moderated
Dec 1, 2009 10:36 PM in response to: Dmitry Jemerov
Re: New IntelliJ Project View Experiences?

Wow - impressive thread. I didn't follow it all.

 

However I would like to give some heads up for the new project view.

Our projects are quite different however: Only 1 to 3 modules, no maven.

 

In the old view it was very confusing to not see the library jars at the

actual location in the file system.

 

Also some content roots are nested inside another content root. That is also

handled much better now.

 

Dmitry Jemerov wrote:

Hello Mark,

 

>> I would agree with Colin's main point. While the new solution does

>> provide (some) module grouping of dependencies, the solution is not

>> very intuitive or user friendly. The primary use case where it fails

>> is that of simple module dependency comparisons. This is not

>> necessarily something you do 8 hours a day. But it is something you

>> might do a couple of times a day depending on where you are in a

>> project's life cycle. And when you need to fo it, it needs to be

>> simply and intuitive so as to not derail your train of thought.

 

We actually already have a feature which is much better suited for this

task, and the feature is Analyze Module Dependencies. Currently it

doesn't show libraries, but it's something that can easily be added.

Other than that, it's a nice fit - it's non-modal, and you can open

several tabs for different modules and switch between them easily.

 

Should we bother implementing that, or will "bring the things back as

they were" will still be the only answer we'll get?

 

 

Colin Fleming Apprentice 784 posts since
Dec 30, 2004
Currently Being Moderated
Dec 1, 2009 11:22 PM in response to: Stephen Friedrich
Re: New IntelliJ Project View Experiences?

Hi Stephen,

 

Great, thanks, it's good to hear some feedback from people who prefer the new view and why. So your library jars are actually contained within the module content root? I can see how it would be confusing not to see them there in that case. In our case, our jars are in the Ivy cache so they're completely outside the project. The whole nested content root thing is also something I hadn't considered, I didn't even know that was possible.

 

Cheers,

Colin

Anton Makeev JetBrains 1,249 posts since
Dec 19, 2006
Currently Being Moderated
Dec 17, 2009 1:41 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Erik,

 

As I think you could make very good use of Dependency Rules feature (http://blogs.jetbrains.com/idea/2006/04/analyzing-code-dependencies-part-ii/).

You can restrict you dependency graph whatever you like and it will be not necessary to constantly check your dependencies "by hands".

 

Thanks,

Anton Makeev

Russ  Newbie 69 posts since
Aug 30, 2007
Currently Being Moderated
Dec 18, 2009 4:48 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Erik,

 

Have you looked at the Maven Enforcer plugin:  http://maven.apache.org/plugins/maven-enforcer-plugin/index.html ?

 

You can setup rules (for example: banned dependencies) in your pom and you can cause the build to fail if they are violated.  It's not immediatly visable in IDEA that a "bad" dependency may have crept in but if you have a continuous build environment then the errors should show up pretty quick.

wallaby.pouch Novice 259 posts since
May 15, 2008
Currently Being Moderated
Mar 10, 2010 10:35 AM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

As far as I can see the maven view / sidebar has a list of libraries for each module. It's a dependency tree and not a list of module libraries, though.

There is now way to list the content or to show a certain library class in the source module library.

 

I miss the old way a lot, too. With more than a few modules it's very hard to work with libraries.

Simon Knott Novice 459 posts since
Sep 9, 2002
Currently Being Moderated
Aug 16, 2010 12:51 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Couldn't agree more Erik - my experience of working on multi-module Maven projects is one of the only times where IDEA hasn't been a pleasure to work with and I ended up dropping into Eclipse (shudder) and command prompt Maven.

Florian Hehlen Novice 304 posts since
Aug 21, 2002
Currently Being Moderated
Aug 18, 2010 10:32 AM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Hi all,

 

Maybe I can come in on this one with a suggestion.

 

I get the impression that a lot of people have a lot of modules in a single project because it used to be to much for IntelliJ(circa v6-8) to have multiple projects open for a long time with a lot of dependencies to manage and a lot of indexing to do. At least that was my experience. Since v9 memory management has gotten significantly better and I often work with 2 or 3 IntelliJ project windows open for hours if not days.

 

I am not trying to tell anyone what to do but maybe this approach would help and maybe, like me before v9, you tend to have everything in one project cause that was the optimal IntelliJ way.

 

BTW, I don't particularly like that the dependencies have been merged into one list either but the maven dependency list makes things ok I find.

 

cheers,

Florian

Florian Hehlen Novice 304 posts since
Aug 21, 2002
Currently Being Moderated
Aug 19, 2010 12:14 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?
- Refactoring, find usages, etc, is harder (impossible?) over multiple projects

 

 

yup... not much one can do about that one... I just wanted to mention it because as a long-time user of Intellij(I started by using their JBuilder plug-in in the pre-Intellij days) I have developed habits that are a product of the IDE's features and short-commings. Sometime re-thinking or getting rid of the habit is the solution

 

florian

Simon Knott Novice 459 posts since
Sep 9, 2002
Currently Being Moderated
Aug 25, 2010 1:22 PM in response to: Florian Hehlen
Re: New IntelliJ Project View Experiences?

Our POM set-up is pretty much identical to Erik's and we appear to share a lot of the same pains

  As soon as I'm in a location which isn't restricted to IE6, I'll pop onto YouTrack and add my thoughts to the issue.

wallaby.pouch Novice 259 posts since
May 15, 2008
Currently Being Moderated
Oct 26, 2010 9:26 PM in response to: Erik Pragt
Re: New IntelliJ Project View Experiences?

Hi,

would this help?

 

http://devnet.jetbrains.net/thread/291581

 

Regards,

Wallaby

Guest
Currently Being Moderated
Nov 27, 2010 2:46 PM in response to: Erik Pragt
replica lv

When a lady is conscious about her height, the smallest of http://www.sale-handbags.com/Armani-c-12.html. People who are blessed with http://www.sale-handbags.com/Balenciaga-c-36.html would not be able to relate well to the obsession of looking tall. The vertically challenged would see the world in a different way then the people who stand tall.The choice of http://www.sale-handbags.com/Bally-c-22.html is the first thing that these less than perfect http://www.sale-handbags.com/Bottega-Veneta-c-20.html would like to consider. There are certain dresses that can make these beautiful ladies look taller and http://www.sale-handbags.com/Burberry-c-29.html is true in case the wrong dresses are picked. Like for example rather than wearing the designs which are horizontal, the blouses, the skirts or any such http://www.sale-handbags.com/Cartier-c-13.html which has vertical lines should be preferred. The http://www.sale-handbags.com/Celine-c-25.html would add the illusion of http://www.sale-handbags.com/Chanel-c-3.html looking tall. Rather than going for http://www.sale-handbags.com/Chloe-c-39.html clothes, skinny clothes would add a little to the height. The http://www.sale-handbags.com/Christian-Dior-c-33.html would not only make the lady fatter than actual but at the same time would make her appear even http://www.sale-handbags.com/Coach-c-2.html. Wearing long dresses would be a bad idea as that would highlight the fact that these ladies have less than http://www.sale-handbags.com/Dolce&Gabbana-c-15.html. An evening gown touching the ground is definitely not going to add that elegance to the lady dressed for http://www.sale-handbags.com/Fendi-c-35.html. http://www.sale-handbags.com/Ferragamo-c-10.html and http://www.sale-handbags.com/Giverchy-c-24.html over the horizontal and http://www.sale-handbags.com/Gucci-c-37.html should be preferred.The hair do also contribute to make a lady look taller. One needs to let the neck show off as that would make the lady look taller. Having short or http://www.sale-handbags.com/hermes-c-34.html should be ideal for the ladies to look taller than their height.The above suggestions would add an illusion of being tall to the overall look. Wearing the http://www.sale-handbags.com/Jimmy-Choo-c-31.html would be the best way to actually stand tall. Depending upon how tall a lady needs to look, she could choose the footwear accordingly. A majority of http://www.sale-handbags.com/Juicy-Couture-c-8.html would not be considered as slipping into these would be painful. This is true only to a certain extend. A little practice and using things like shoe cushions can help ladies to add few extra inches and let go off the pain.The kind of http://www.sale-handbags.com/Kooba-c-27.html that the lady carries would also add or deduct from the tall look she wants to have. Like for example, carrying http://www.sale-handbags.com/Lancel-c-21.html which are vertically designed would add to the overall look. The Louis Vuitton http://www.sale-handbags.com/Loewe-c-19.html could be the example of one such http://www.sale-handbags.com/Louis-Vuitton-c-1.html. As the http://www.sale-handbags.com/Luella-c-26.html which are horizontally designed and has short handles or straps would make the lady look shorter than she actually is. There are not many ladies who could have the pleasure of adding extra inches to the height or to the overall illusion look of being tall with the designer vertical http://www.sale-handbags.com/Marc-Jacobos-c-30.html, as the one mentioned above. For these ladies the imitation or the http://www.sale-handbags.com/Marni-c-23.html is available to choose from.Though, when the perfect tall looks is desired every thing would count, even the http://www.sale-handbags.com/Miumiu-c-32.html that a lady is carrying. But the real difference would be made by the heels that she is slipped into.

 

---

Original message URL: http://devnet.jetbrains.net/message/5278994#5278994

 

More Like This

  • Retrieving data ...