Basis IntelliJ-configuratie

1. Overzicht

Een goede IDE is belangrijk voor de productiviteit van ontwikkelaars. IntelliJ is momenteel een van de toonaangevende IDE's en ondersteunt vele programmeertalen.

In deze zelfstudie beginnen we met enkele basisconfiguraties in IntelliJ, met de nadruk op de programmeertaal Java. We zullen ook de meest voorkomende snelkoppelingen in IntelliJ vermelden om de productiviteit van ontwikkelaars te verhogen.

2. IntelliJ installeren

Eerst moeten we IntelliJ voor ons platform downloaden en installeren. Voor de functies die we gaan bespreken, zal de Ultimate- of Community-editie het geweldig doen.

3. Basisprojectconfiguratie in IntelliJ

3.1. JDK configureren

IntelliJ is geschreven in Java en wordt geleverd met een ingepakte JRE voor het uitvoeren van de IDE.

Echter, we moeten IntelliJ configureren met een JDK om Java-ontwikkeling uit te voeren. Het kan globaal of per project worden geconfigureerd.

Laten we eerst eens kijken hoe we een globale JDK kunnen configureren met behulp van de Schakel over naar IDE Boot JDK keuze:

De gemakkelijkste manier om de Switch IDE Boot JDK-optie te vinden, is via de wizard "Actie zoeken".

We kunnen er komen via het Help-menu of door te typen Ctrl + Shift + A of Cmd + Shift + A.Meestal het zal elke geïnstalleerde JDK weergeven en ons in staat stellen om de gewenste te kiezen.

Vervolgens maken we een nieuw Java-project.

3.2. Een Java-project maken

Om een ​​nieuw Java-project te maken, laten we deNieuwe projectwizard van Bestand-> Nieuw-> Project:

Vervolgens selecteren we Java om een ​​eenvoudig Java-project te maken.

Bovendien, dit venster stelt ons in staat om een ​​projectspecifieke JDK te configureren als we dat willen.

Op het volgende scherm biedt IntelliJ sjabloonprojecten zoals Hallo Wereld als uitgangspunt, maar laten we gewoon Voltooien selecteren en aan de slag gaan.

Nu we een basisprojectstructuur hebben, kunnen we een Java-klasse toevoegen door de src map en vervolgens met de rechtermuisknop klikken of typen Alt + Invoegen. We zullen selecteren Java-klasse vanuit dit menu en krijg een dialoogvenster waarin we het een naam kunnen geven:

3.3. Bibliotheken configureren

Een Java-project is meestal afhankelijk van veel externe bibliotheken of bibliotheken van derden. En hoewel Maven en Gradle de typische go-tos zijn om dit te beheren, laten we eens kijken hoe u dit native doet in IntelliJ.

Laten we zeggen dat we de StringUtils API van de commons-lang3 bibliotheek.

Net als de JDK-instellingen, we kunnen ook bibliotheken configureren op globaal en projectniveau. Wereldwijde bibliotheken worden door alle projecten gedeeld. Zowel globale als projectspecifieke bibliotheken kunnen worden toegevoegd door het dialoogvenster Projectstructuur (Bestand-> Projectstructuur).

Om de bibliotheek toe te voegen, moeten we deze eerst downloaden. Normaal gesproken is de gemeenschappelijke bron voor elke externe bibliotheek de Maven Repository. Daarom stelt IntelliJ ons in staat om het rechtstreeks te downloaden vanuit elke vooraf geconfigureerde Maven-repository. En uiteraard, als er geen repository is geconfigureerd,het zal de Maven Central doorzoeken.

IntelliJ zal nu het commons-lang3.jar in een opgegeven map. Daarnaast voegt het het ook toe aan het klassenpad van het project.

Onthoud dat natuurlijk het op deze manier toevoegen van een bibliotheek is IntelliJ-specifiek en niet zo draagbaar als robuustere opties. Het is echter handig voor eenvoudige projecten.

In de volgende sectie zullen we deze bibliotheek gebruiken en een eenvoudig Java-programma uitvoeren.

4. Een toepassing uitvoeren of debuggen

4.1. Configuraties uitvoeren / debuggen

Voordat we ons Java-programma uitvoeren, moeten we wat code toevoegen aan de klasse die we eerder hebben toegevoegd. We gebruiken gewoon de toegevoegde bibliotheek en bellen StringUtils.reverse () om elke tekst die als een programma-argument is opgegeven, om te keren:

System.out.println (StringUtils.reverse (args [0]));

Nu zijn er twee manieren om deze hoofdmethode in IntelliJ uit te voeren. Ten eerste kunnen we gewoon rennen Ctrl + Shift + F10 of Control + Shift + R / D van de hoofdklasse. IntelliJ maakt vervolgens een tijdelijke Run-configuratie.

Omdat we echter een Draad naar onze StringReversal applicatie als een programma-argument (het args [0] part), zal een tijdelijke run-configuratie niet werken.

Dus we kunnen een permanent maken Configuratie uitvoeren / debuggen.

We doen dat met behulp van de "Configuraties bewerken”-Venster van de navigatiebalk uitvoeren (Uitvoeren-> Configuraties bewerken):

Hier specificeren we de naam van onze klas om in te rennen Hoofdklasse. Het heeft een hoofdmethode nodig om dit te laten werken.

We passeren ook een Draad - baeldung, in dit geval - als een Programma-argument op onze applicatie.

En hoewel we dit hier niet demonstreren, kunnen we ook JVM-opties en omgevingsvariabelen configureren voor onze applicatie.

In tegenstelling tot tijdelijke run-configuraties, IntelliJ slaat deze configuratie op en stelt ons in staat om deze op elk moment met een klik op de knop uit te voeren.

4.2. Fouten opsporen in een Java-applicatie

IntelliJ heeft geweldige ondersteuning voor het opsporen van fouten in veel talen. Laten we onze String omkering hulpprogramma als voorbeeld.

Zoals met de meeste IDE's, kunnen we een onderbrekingspunt toevoegen aan elke regel van onze klasse vanuit de editor door op het zijpaneel te klikken:

Nu kunnen we de klasse debuggen door op het foutopsporingspictogram in de configuratie Uitvoeren / debuggen te klikken.

In dit geval wordt het programma onderbroken op regel 9 zoals hierboven weergegeven, waardoor we de thread-stack kunnen inspecteren, variabelen kunnen inspecteren of zelfs uitdrukkingen kunnen evalueren (Alt + F8 of Optie / Alt + F8).

Op dit punt kunnen we beide Stap in (F7) de StringUtils.reverse () methode, Overstappen (F8) de lijn of Programma hervatten (F9), wat betekent dat wordt uitgevoerd tot het volgende breekpunt of tot het einde van de toepassing.

Gewoonlijk stellen de meeste IDE's de gebruikers in staat om een ​​regel in een Java-klasse als een breekpunt te markeren, zoals we zojuist hebben gebruikt. Daarnaast, Met IntelliJ kunnen we meer configureren dan alleen lijnbreekpunten. We kunnen ook doen:

  • Tijdelijk breekpunt - Een regelbreekpunt dat slechts één keer wordt uitgevoerd
  • Uitzonderingsbreekpunt - Een onderbrekingspunt voor elke uitzonderingsklasse in Java. De debugger pauzeert wanneer die uitzondering op het punt staat te worden gegenereerd
  • Methode breekpunt - Een die wordt uitgevoerd bij het invoeren of verlaten van een methode
  • Veldbreekpunt - En een die wordt uitgevoerd wanneer een veld wordt gewijzigd

Een breekpunt kan ook voorwaardelijke logica hebben.

We kunnen alle breekpunten in een project in het Breekpunten dialoog Uitvoeren-> Bekijk breekpunten (Ctrl + Shift + F8 of Cmd + Shift + F8).

4.3. Artefacten bouwen

Nu we alle problemen hebben getest, debuggen en opgelost, zijn we klaar om onze applicatie te verzenden. Daarom moeten we implementeerbare binaire bestanden maken voor onze applicatie.

We kunnen automatisch inzetbare .jar-binaire bestanden maken in IntelliJ.

Ten eerste in de Projectstructuur (Ctrl + Alt + Shift + S of Cmd +;), moeten we een nieuw artefact declareren.

We selecteren "Artefacten" en klik vervolgens op de plusknop.

Vervolgens selecteren we een JAR-artefact en voegen we ook afhankelijkheden toe in de JAR:

Vervolgens gaan we terug naar onze Configuratie uitvoeren / debuggen dialoog.

Daar moeten we een Build Artifact-taak toevoegen in het venster Before Launch. Als gevolg hiervan is er een nieuw uitvoerbaar bestand pot wordt voor onze applicatie gemaakt elke keer dat we onze Run / Debug-configuratie uitvoeren.

Nogmaals, het bouwen van artefacten is niet IDE-agnostisch. Dit mechanisme is specifiek voor IntelliJ. Een build-managementtool zou een betere benadering kunnen zijn, vergelijkbaar met wat we hebben besproken voor afhankelijkheidsbeheer.

5. Veelgebruikte sneltoetsen in IntelliJ

De snelkoppelingen zijn erg handig om de productiviteit van ontwikkelaars te verhogen. Het volgende is een snel spiekbriefje voor de meest voorkomende.

5.1. Navigatie

  • Zoekklasse - Ctrl + N / Cmd + O
  • Zoek alle bestanden - Dubbele dienst
  • Recente documenten - Ctrl + E / Cmd + E
  • Schakelen tussen bestanden - Ctrl + Tab / Cmd + Tab
  • Type hiërarchie - Ctrl + H / Control + H
  • Oproephiërarchie - Ctrl + Alt + H / Control + Alt + H
  • Bestandsstructuur popup - Ctrl + F12 / Cmd + F12 (toont alle methoden en velden)
  • Ga naar aangifte - Ctrl + B / Cmd + b
  • Ga naar implementaties - Ctrl + Alt + B / Cmd + Alt + B
  • Projectstructuur weergeven - Ctrl + Alt + Shift + S / Cmd +;

5.2. Editor

  • Code aanvullen - Ctrl + spatiebalk / Control + spatiebalk
  • Methode parameter info - Ctrl + P / Cmd + P
  • Methode / Klasse documentatie info - Ctrl + Q / Control + J
  • Code opnieuw formatteren - Ctrl + Alt + L / Cmd + Alt + L
  • Importeren optimaliseren - Ctrl + Alt + O / Control + Alt + O
  • Dubbele regel - Ctrl + D / Cmd + D
  • Regel verwijderen - Ctrl + Y / Cmd + Delete
  • Code selectie - Ctrl + W / Alt + Omhoog
  • Toon snelle acties - Alt + Enter / Alt + Return
  • System.out.println sout + Ctrl + Enter / sout + Control + spatiebalk
  • openbare statische leegte main psvm + Ctrl + Enter / psvm + Control + spatiebalk
  • System.out.println voor de retourwaarde van een methode methodName (). sout [Enter]
  • Wijs de retourwaarde van de methode toe aan de lokale variabelemethodName (). var [Enter]

5.3. Refactoring

  • Hernoem klasse / methode - Shift + F6
  • Extractiemethode - Ctrl + Alt + M / Cmd + Alt + M
  • Extract variabele - Ctrl + Alt + V / Cmd + Alt + V
  • Extract veld - Ctrl + Alt + F / Cmd + Alt + F
  • Extract constante - Ctrl + Alt + C / Cmd + Alt + C
  • Extract parameter - Ctrl + Alt + P / Cmd + Alt + P

6. Conclusie

In dit artikel hebben we enkele basisconfiguraties in IntelliJ bekeken.

We hebben bijvoorbeeld een Java-project gemaakt, bibliotheken toegevoegd, er fouten in gemaakt en een artefact gemaakt, allemaal in IntelliJ.

Ten slotte hebben we gekeken naar snelkoppelingen voor enkele veelvoorkomende acties.