Running two projects on IntelliJ suffers from slow performance - performance

Currently, I'm making web-apps using php [backend] project and AngularJS [frontend] project. To make above two projects simultaneously, I need to run 2 programs (Webstorm and IntelliJ).
But, I want to run two projects just using IntelliJ. I already tried before, but the IntelliJ performance was so bad and I don't know why. (I gave IntelliJ 4G of RAM and other options to run it smoothly, but it also returns slow performance.)
I installed Angularjs support, PHP/Laravel support, and Java/Spring support, and other plugins on IntelliJ.
I assume that this made IntelliJ slow, but I need to use above plugins to keep developing.
I'm using webstorm and Intellij for both front and back-end programming in fast speed.
In this case, do you have any idea to improve performance of IntelliJ when Running 2 programs simultaneously on intelliJ?
The reasons why I'm trying to run just IntelliJ are I just have only IntelliJ license and switching between front-end and back-end program is easier than 2 program. (It can be done just by command + ` to switch both project, but I need to command tab many times to switch between project. It makes me hesitate.)
If you have idea or have any manual which I didn't find before, please let me know.

Related

Intellij: Need a way to speed up gradle import and build process

I have a Java microservices project with 37 different modules (and growing). Whenever my versions change, Intellij reimports the Gradle build info and rebuilds all of them, including downloading the dependencies. This takes almost TWO hours! What can be done to speed this up?
I gave the compiler 3g of RAM hoping that would help, but the difference is minimal. Are there any other settings I can tweak?
Just wanted to add that I'm on a 64-bit, 6 core box, so I should certainly be able to build faster than this.

Is there a way to build the same JavaFX app to a .exe with different build types?

I need to build a javafx aplication to a .exe file, to be used in 3 differents enviroments.
Now, before I build the application to each different enviroment I am changing every variable manualy, like urls, versions and tokens. I know that is a matter of time until I upload the wrong version to the wrong enviroment, so I really need a more automatic process to manage each version.
I read something about maven build profiles but i do not find a way to integrate this in the building of the exe file
This javaFx app is using maven and java10
To build the java code to an exe, I'm using Intellij
Thank you in advance
The big problem is that java 10 is end of lifetime (EOL), so you should already work with java 11, this however is a little more complicated since JavaFx/OpenJfx is now separated. (see https://openjfx.io/)
Anyway to solve your complex needs you should think about a CI platform like as example gitlab CI.
This platforms (with the help of Docker Images) give you the tools you need to properly build and configure complex javaFX build targets and configurations.
But you have to build the .exe file on your own with tools like exe4j if you choose this path.
Side Tips:
In my experience is a lot more easy to build java 11 applications
with gradle instend of just maven since you gain a lot more
flexiblity to solve complex problems
If you stay on java 10 it would be much easier since Java11 + Openjfx
11 required OS dependend builds. (but as I sayed it is EOL)

How do Tomcat and Maven work when building a project?

I have been given a project to work on, and I know that in order to make efficient progress I need a good mental model of how things work together. I am supposed to be using an IDE of my choice, as well as Maven and Apache Tomcat to compile and build the project. I can do that, but the program is not fully functional, and because I don't understand how all the software works together, debugging is difficult. I have spent a lot of time researching how these things work, and what they do, but I am still not understanding. I know that Maven handles the dependencies, but I do not really understand what that means. I am confused by what Tomcat technically is, but I understand that it is needed to run dynamic programs. Beyond that, I do not understand how it works, or what it does. I also do not understand what happens between the IDE to the Tomcat server, as in, what is connecting them and how do I get my changes to affect what I see in my browser? Thank you!
Very short.
Maven builds your code by compiling the sources you write into byte code which the Java Virtual Machine can run, and include code written by others that your code needs. This is a good thing.
Tomcat has your compiled code (which needs to be in the form of a webapp) deployed to it, after which it can be run if appropriately invoked.
How the compiled code gets from your machine after Maven builds it, into Tomcat varies depending on the need of the team doing it, but during development this is often facilitated by your IDE - this typically also makes it easier to debug.
If at all possible, I would suggest finding a local mentor which can help you getting started because there is a lot of moving parts your need to have a basic understanding of.

Debugging a Scala project (IntelliJ Idea 12 and sbt)

I've seen a few articles describing how to debug Scala applications, but nevertheless I want to ask it again due to the reason that all those articles are outdated and all things change very quickly in Scala world.
I use IntelliJ Idea 12 + sbt (not a plugin, a plugin doesn't work for some reason).
So how do I do that nowadays?
IMO, you are best off keeping SBT and Intellij separate, as they are two different concerns. One is for building, and the other is for developing.
Here are the steps that I typically go through to get a solid Scala/Intellij development environment up and running for a new Scala project.
Step 1: Install Scala Intellij Plugin
Step 2: Create a simple sbt project - details here
Step 3: Add the fantastic sbt-idea plugin to your sbt config
Step 4: sbt gen-idea
Step 5: Open project in Intellij 12
Enjoy debugging, syntax highlighting, code assist and all of the other nice IJ features.
On the sbt side, I typically keep a terminal open, with sbt running so that I can rapidly test things outside the context of Intellij.
HTH

what is the recommended system requirement for using eclipse and maven plugin?

I am wondering what is the recommended system requirement for using eclipse and m2eclipse plugin. I am using E8400 and 4Gb ram currently. Nearly every time I changed something in the pom.xml the eclipse IDE would hang for a while (about 1-3 minutes) before it finished. Is it normal?
Generally speaking, it is not normal.
I do all my development on a laptop with 4GB of RAM and I am able to run Eclipse + M2Eclipse + Tomcat + Flex/Flash + MySQL, etc. I change my POMs (8 of them in one project) constantly and it usually never takes more than a few seconds.
That said, depending on the size of your dependency tree it can take a while to download all the dependencies to your local machine. You can find out what is happening by opening the console view in Eclipse and selecting the Maven console within it. Check it out and report back, perhaps there will be a clue as to some other problem.

Resources