Separate IntelliJ settings for projects - intellij-idea

I'm working on multiple projects at the moment and the fact that IntelliJ automatically synchronizes all settings makes life quite difficult for me.
For example, for project A I need to use a specific version of Maven with specific settings, for project B another version with other settings and for project C another version. This however isn't possible, when I set the Maven folder to something, it automatically syncs when I open a new IntelliJ.
This was just an example, there are more settings that I would like not to be shared.
Is there a way to resolve this?

Related

How to create a project from the commandline?

Is it possible to create an IntelliJ project purely from the command line?
We are looking a streamlining the on-boarding of new hires and off-shore resources and to minimise the amount of project setup they have to perform. As such, it would be nice if we had the IDE already configured for them to get started.
There is a legacy plug-in for Maven to generate IntelliJ IDEA project files, but we don't recommend using it.
Instead, it would be easier to instruct users to open pom.xml file in the IDE so that the import is performed automatically.

Configure IntelliJ project when importing when importing a Gradle project

Is there a way to import a Gradle Java project into IntelliJ 2017.2.x and apply some settings like
code style
vcs settings
from the Gradle build.gradle on project level?
I noticed that e.g. the Grails Framework uses the idea-gradle-plugin but this only works in combination with the Gradle task idea.
gradlew idea
I don't want to generate IntelliJ project files using a Gradle task. I would like IntelliJ to fetch the settings from the build file whenever I import the build.gradle file.
Is this possible?
Afaik no. You can only set in build.gradle what is supported by the DSL that then also is understood by the IDEA integration. There is no way to set arbitrary settings this way.
To do this, as you already found out, you need to hook into the IDEA project file generation and generate the settings you want like code style settings and VCS settings (I do both for our projects and more) and then use the idea task to generate the project files.
You can also configure IDEA to automatically run some Gradle task before refreshing the project, so you can make IDEA automatically run the idea task before refreshing and this should work then. The initial IDEA setup to do this though has either to be generated with idea, set-up manually by all devs or configured once and then checked in. But if you check-in the IDEA files, you can of course also simply check-in the code-style and VCS settings. Most of the IDEA project files are meant to be checked in anyway. Just some like the workspace file are meant to be developer-specific and thus excluded from being checked in.

How do you link an eclipse project to an eclipse plug-in project?

I am building an eclipse plug-in project that acts as a front end. I also have a separate eclipse project that runs as a backend. Right now I can run each of them separately and they communicate just fine using sockets.
I would like the plug-in to create the major components of the back end when it starts but also keep the two projects separate so that I can use other editors to communicate with the back end. So, I added the back end eclipse project to the build properties of the plug-in project and I added some code from the back end driver to the plug-in activator's start(). However, when I run the plug-in project I am getting class not found exceptions for all back end references. It appears to compile fine, but I can't run it. I do not do anything to the MANIFEST.MF file in the plug-in project.
How does one add a second java project to an eclipse plug-in project?
There are several ways you can do this, going from best and most difficult to worst and easiest:
(1) Use a build tool (such as the built-in ANT, or tycho, or (as I'm sure there are) some other). This is by far the best solution, but is quite a bit more involved than the next 2.
(2) Convert your non-plugin project to a plugin project and add it as a plugin dependency in your plugin settings file's dependencies tab
(3) Export your non-plugin to a new .jar in your plugin project directory (e.g. $project_loc/lib/something.jar); go into plugin settings (plugin.xml) and include it in: The Build tab under binary build, and the Runtime tab under Classpath. (Or edit the corresponding entries in manifest.mf and build.properties)
For most cases I'd recommend approach (1); look up a few tutorials online, there are plenty. (3) is the quick-and-dirty non-flexible workaround to your particular situation, good for nothing other than seeing if it actually can run. (2) is somewhere in between -- obviously not ideal, but not as bad as 3.

Setup IntelliJ IDEA 12 with Play2 and framework sources (java)

I'm using IntelliJ IDEA 12, its Play2.0 plugin for a Java project.
Unfortunately Play 2 (2.1.4 at this time) does not ship with the sources for its dependencies, and running idea with-sources=yes only downloads the project's dependencies sources.
So far I've had to manually download the source jars and attach them whenever I needed them.
Of course I have to redo this every time the Play framework is updated.
Is there any better way, either within play, which I would prefer, or with an external solution?
Unfortunately IDEA's "Search in internet..." button usually doesn't work, most likely because it's looking on the wrong respositories. I suspect it is trying to use the Maven settings with the configured Nexus repos, but AFAIK Maven central is not in there.
It is as simple as running update-classifiers in the Play console and then regenerating the project files.
I wish this would be done automatically, but apparently it is too obvious to sbt users.

intelliJ 11.1.4 - adding a jar to project only works 50%

I have an Android project that uses some external libraries. The problem is that within intelliJ I can build the project and it runs fine, but the editor marks classes that come from the jars as unknown.
I've added the jars to the correct module (project structure -> module -> dependency) independently, from the libs directory, as classes, jar directory, etc. I've also tried to add them using project settings -> add libs, attach them to the module. But to no avail. I also tried to add them within the project explorer with right-click -> add library. Nothing works.
It was all fine before but now after a horrible IntelliJ crash it no longer works. This has happened to me twice now. And I loose a lot of time trying to fix this. Am I fighting an intelliJ bug here?
File | Invalidate Caches is the first thing to try in similar cases.