IntelliJ automatisch opslaan uitschakelen

Ik heb behoorlijk wat gegoogeld over deze vraag en de meeste threads die ik heb gevonden zijn meer dan 2 jaar oud, dus ik vraag me af of er iets is veranderd, of dat er een nieuwe methode is om het probleem met betrekking tot naar dit onderwerp.

Zoals je wellicht weet wanneer je IntelliJ gebruikt (ik gebruik 14.0.2), worden bestanden vaak automatisch opgeslagen. Voor mij duurt het ongeveer 2 seconden voordat de wijzigingen worden opgeslagen als ik een wijziging aanbreng in Java- of JavaScript-bestanden. Er zijn opties waarvan men zou denken dat ze hier invloed op zouden hebben, zoals Instellingen > Uiterlijk & Gedrag > Systeeminstellingen > Synchronisatie > Sla bestanden automatisch op als de applicatie X sec niet actief is. Deze instellingen lijken echter geen effect op mij te hebben en IntelliJ slaat nog steeds automatisch op, bijvoorbeeld als ik omhoog moet scrollen om te onthouden hoe een methode waarnaar ik verwijs iets doet.

Dit is echt frustrerend als ik automerken heb, die TomCat in de war brengen, of bestanden bekijk via Grunt, Karma, enz. tijdens JS-ontwikkeling. Is er een magische setting die ze recentelijk hebben aangebracht? Heeft iemand ontdekt hoe je automatisch opslaan kunt uitschakelen, of eigenlijkkunt vertragen?


Antwoord 1, autoriteit 100%

Het kan niet volledig worden uitgeschakeld. Het vormt de kern van de functionaliteit van de IDE en is sterk geïntegreerd in de werking ervan, inclusief de Open API (voor plug-ins). Uitschakelen zou problemen veroorzaken met veel functies.

Je kunt zowel de instellingen voor Save files on frame deactivationals Save files automatically if idle for x secondsuitschakelen (via Bestand > Instellingen > Uiterlijk & Gedrag > Systeeminstellingen):

Schermafbeelding van synchronisatie-instellingen

Als deze instellingen zijn uitgeschakeld, slaat IDEA alleen automatisch op bij een belangrijke gebeurtenis, zoals bouwen, maken, uitvoeren van een test of applicatie, enz.<EDIT>Het zou ook moeten zijn merkte op dat auteurs van plug-ins toegang hebben tot de FileDocumentManager.saveAllDocuments()methode die automatisch opslaan aanroept. Dit is ook nog een reden waarom het verwijderen van deze functionaliteit problematisch zou zijn.</EDIT>Omhoog scrollen in een bestand zou geen gebeurtenis moeten zijn om automatisch opslaan te activeren (tenzij een plug-in van derden dit doet). Ik wachtte een goede 15 minuten om te verifiëren – geen auto-save. Als je ander gedrag ziet, raad ik je aan een bugrapport te openen (https://youtrack.jetbrains.com). Je wilt zoveel mogelijk details geven, aangezien IDEA 14.0.2 al geruime tijd uit is en er geen meldingen zijn van een probleem met automatisch opslaan.

Merk op dat ik de Instellingen > redacteur > Algemeen > Editor Tab >Mark Modified tabs with asteriskingeschakeld om te controleren of het bestand niet automatisch wordt opgeslagen. (dwz de asterisk blijft staan, zelfs na een lange periode van inactiviteit en wanneer ik het IDEA-frame opnieuw activeer.) Heb je dat ingeschakeld?Het kan iets anders zijn dan automatisch opslaan dat ervoor zorgt dat de andere tools zien een bestandswijziging. Het inschakelen van de asterisk-optie zou helpen om dat te bepalen.

Waarom je echt niet handmatig hoeft op te slaan

Er moet ook worden opgemerkt dat u altijd toegang hebt tot Lokale geschiedenis. Lokale geschiedenis volgt (en registreert) voortdurend alle wijzigingen die in een project zijn aangebracht. En het stelt je in staat om gemakkelijk een bestand, of een hele map, terug te zetten naar een vorige staat (zelfs niet-opgeslagen). Dus elk waargenomen verlies van functionaliteit door geen volledige controle te hebben over wanneer een bestand wordt opgeslagen, wordt gecompenseerd met deze functionaliteit. Toen ik IntelliJ IDEA voor het eerst begon te gebruiken in 2003, vond ik de functie voor automatisch opslaan vreemd en voelde ik dat ik enige controle verloor over het bepalen wanneer ik bestanden in een hercompilatie wilde opnemen. Maar toen ik IntelliJ IDEA gebruikte, realiseerde ik me al snel (binnen een week of twee) dat dit een vals gevoel van controle was. Tussen lokale geschiedenis, wijzigingslijsten en de mogelijkheid om wijzigingen op de plank te plaatsen, had ik uiteindelijk veel meer controle, terwijl ik tegelijkertijd geen tijd verspilde om erachter te komen waarom mijn recente wijziging niet werkte, alleen om te beseffen dat ik vergat er een op te slaan van de bestanden die ik heb gewijzigd. Ik schakel over van het niet leuk vinden van de functie naar het absoluut geweldig vinden. Ik zou mensen die automatisch opslaan als een “beperking” of zelfs een “dealbreaker” zien, aanmoedigen om het gewoon een tijdje te proberen en te zien. Het vereist enkele wijzigingen in uw persoonlijke workflow, ik denk dat u uiteindelijk een betere workflow zult hebben. Ik heb het niet gemist in de afgelopen 16+ jaar dat ik IDEA gebruik.

BEWERKEN

Lanceert u Tomcat via een IntelliJ IDEA run/debug-configuratie? Zo ja, hebt u de optie “on frame deactivation” in die Run/Debug-configuratie ingesteld op een van de “Update”-opties? Daardoor zouden de bestanden veranderen.


Antwoord 2, autoriteit 17%

Je kunt het opnieuw compileren uitschakelen door Energiebesparingsmodus in te schakelen.

Als de energiebesparende modus is ingeschakeld, reduceert IntelliJ IDEA zijn functionaliteit tot die van een teksteditor, door geen dure achtergrondactiviteiten uit te voeren die de batterij van de laptop leegmaken. Deze activiteiten omvatten het markeren van fouten en on-the-fly inspecties, autopopup code-aanvulling en automatische incrementele achtergrondcompilatie.

Als alternatief, of als u denkt dat dit een beetje te extreem is, wijzigt u de update-actie voor uw Tomcat in “Niets doen”.


Antwoord 3, autoriteit 10%

Ik denk dat het juiste antwoord werd gegeven als een opmerking van ryanlutgen hierboven:

Het voordeel van het automatisch opslaan van uw bestand is niette wijten aan de genoemde opties voor automatisch opslaan.

IJ slaat alle wijzigingen in uw build-bronnenop om automatisch het doel te build.

Dit kan worden uitgeschakeld in:

Preferences -> Build,Execution,Deployment -> Compiler -> Make project automatically.

Opmerking: moet nu de projectopbouw handmatig starten (bijvoorbeeld door een geschikte sneltoets te gebruiken)

(Alle andere “auto-save”-opties stemmen het ingebouwde auto-save-gedrag gewoon af.)


Antwoord 4, autoriteit 7%

Het slechte nieuweis: het is niet mogelijk om automatisch opslaan uit te schakelen voor intellij & Co. (JetBrains Webstorm enzovoort). Ik verloor wat werk omdat ik een paar keer op CTRL-Z drukte om wat oudere code te nemen, per ongeluk drukte ik op “z” en ik kon geen CTRL-Y meer doen. Ik kan het bestand niet open houden in andere programma’s omdat het voortdurend verandert en het andere programma me honderd keer per dag vraagt ​​om te vernieuwen…

Het goede nieuwe:er zijn enkele tijdelijke oplossingen. Zie het volgende (de verwijzingen in vierkante remblokken verwijzen naar de onderkant van mijn commentaar):

Van de officiële intellij-ondersteuningswebsite[1]:

«Het automatisch opslaan aanpassen

De volgende opties zijn beschikbaar voor het afstemmen van het autosave-gedrag (Bestand | Instellingen | Uiterlijk en gedrag | Systeeminstellingen):

Bestanden opslaan bij deactivering van frames (d.w.z. bij het overschakelen van IntelliJ IDEA naar een andere applicatie)

Bestanden automatisch opslaan als de applicatie N seconden inactief is

Houd er rekening mee dat dit optionele triggers voor automatisch opslaan zijn en dat u automatisch opslaan niet volledig kunt uitschakelen

Controleer ook de website [2] (onderaan mijn opmerking) waar u andere oplossingen en meer details kunt vinden, zoals:

«In Instellingen → IDE-instellingen → Algemeen

verwijder het vinkje bij “Bestanden synchroniseren bij frame-activering” → verwijder het vinkje bij “Bestanden opslaan bij frame-deactivering”

indien mogelijk, verwijder dan het vinkje bij “Bestanden opslaan als toepassing inactief is voor”. Als het grijs is, stel het dan in op 6442450 seconden (ongeveer 74 dagen)…»

De laatste is om Eclipse te installeren en er een donkere huid voor te kiezen. Niets is perfect, maar…

EDIT: de optie beschreven in [2] over het instellen van een groot getal is niet nodig, tenzij iets grijs is en je het automatisch opslaan niet kunt uitschakelen… Ik moet dat testen.

Ah… het volgende probleem zal zijn om de “opslaan” knop/opdracht te vinden. In intelliJ is Ctrl+S “Alles opslaan” …

[1] https://www.jetbrains .com/idea/help/saving-and-reverting-changes.html#d1542336e137

[2] https://intellij -support.jetbrains.com/hc/en-us/community/posts/207054215-Autosave uitschakelen


Antwoord 5, autoriteit 5%

Gebruik in de nieuwste intellijof pycharmide de onderstaande optie om automatisch opslaan uit te schakelen.

Bestand -> Instellingen -> Uiterlijk & Gedrag -> Systeeminstellingen -> Bestanden opslaan bij het overschakelen naar een andere applicatie(Deselecteer)

voer hier de afbeeldingsbeschrijving in


Antwoord 6, autoriteit 2%

Ik kwam dit ook tegen. Naast alle antwoorden die al zijn gegeven, kan er nog een andere oorzaak zijn: in mijn geval was het te wijten aan de SonarLint-plug-in die ik heb geïnstalleerd. Die plug-in analyseert automatisch elk aangeraakt bestand en doet een auto-safe onder de motorkap.

Toen ik bepaalde bestandstypen (bijvoorbeeld TypeScript/JavaScript-bestanden) uitschakelde voor automatische analyse, werden die bestanden uiteindelijk niet meer automatisch opgeslagen in IntelliJ.

SonarLint-instellingenvenster om bestand (typen) uit te sluiten


Antwoord 7

Als er bestandswatchers actief zijn (Voorkeuren>Tools>File Watchers), controleer dan hun Geavanceerde opties. Schakel alle Auto-save-bestanden uit om de watcher-schakelaars te activeren.

Deze optie vervangt de Autosaveopties van Preferences>Appearance & Gedrag>Systeeminstellingen.


Antwoord 8

Als je flow gebruikt, moet je het automatisch opslaan daar ook uitschakelen.

Voorkeuren -> Talen & Kaders -> Javascript

stroom automatisch opslaan uitschakelen

Other episodes