Loading...
npaunov avatar npaunov 51 Точки

[Useful Info] IntelliJ ? Как да си направим живота по-лесен.

Здравейте,

Инсталирах си IntelliJ IDEA 14.1 Community Edition.

Защо InetelliJ, а не Eclipse? Попаднах на тази Статия, която ми се стори интересна.

Срещнах малко проблеми, също открих услеснения и реших да ги събера в една тема.

Всеки който иска да помогне да спестим малко време в търсене на упътвания за IntelliJ, като зададе въпрос или напише отговор, е добре дошъл smiley


-- РЕШЕНИЯ --

1. Инсталиране на Windows 7 64 bit, или как да си спестим 2 часа.

  - Инсталирах си Java JDK или по-точно файла: jdk-8u60-windows-x64.exe

  - Инсталирах си IntelliJ Community Edition. Програмата създаде "пряк път" на работния плот и аз я стартирах. Едно от първите неща, които  трябваше да направя е да свържа IntelliJ с SDK (мисля, че в Eclipse това става автоматично). Е да де, ама не. Intellij не можа да открие, току - що инсталираната JDK. А аз успях да я открия! Поне по пет начина, включително и от конзолата. След доста ровичкане в нета ми просветна, че може да има несъответсвие във версиите!

Решение:

 - Прекият път "IntelliJ IDEA Community Edition 14.1.4" на десктоп-а  сочи към 32 bit - ова версия, по подразбиране. Е, нормално е 32 bit- ова версия да не може да открие 64 bit SDK.

- В същата папка където е idea.exe има още един файл idea64.exe. Трябва да се пренасочи прекия път да сочи към втория файл.

- Не знам на други версии на Windows 64 bit, дали ще се получи същото, но е добре да се знае.

2. Как да нагласим  Еnvironment Variable in Windows 7 64 bit powered by@malkstor

To be continued .....


-- НАСТРОЙКИ --

1. Активиране на Zoom

  - Докато сте в програмата натиснете  Ctrl+Alt+S, ще се отвори прозорец Settings.

  - Изберете Editor,  след това General, и сложете отметка върху "Change font size (Zoom) with Ctrl + Mouse Wheel"

2. Предишни версии

  - Дясно копче на мишка върху който и да е клас

  - От менюто изберете Local History след това Show history.

  - Можете да посочите версия, след това дясно копче  + Revert

3. Encoding UTF-8

  - Натиснете Ctrl+Alt+S

  - Натиснете Editor от менюто изберете File Encodings

  - Горе в опциите можете да нагласите IDE Encoding и Project Encoding

 

To be continued .....


-- ПО-ЧЕСТО ИЗПОЛЗВАНИ "SHORTCUTS" --

1. Напишете "psvm" + Tabpublic static void main(String[] args)

2. Напишете "sout" + Tab  = System.out.println();

3. Натиснете Ctrl + D = прави копие на реда на който сте в момента.

4. Натиснете Ctrl + Alt + L (IntelliJ) = Ctrl + KD (Visual Studio) = reformat code style; powered by @aanguelov

5. Натиснете CTRL + / = За да закоментирате и откометирате код; powered by @D.Kostadinov

6. Натиснете Alt + Insert = генерира Getter and Setter

To be continued .....

Тагове:
21
Java Advanced 29/08/2015 12:23:27
aanguelov avatar aanguelov 219 Точки

Ctrl + KD (Visual Studio) = Ctrl + Alt + L (IntelliJ)

6
peterborisov avatar peterborisov 123 Точки

Ctrl + K+D (Visual Studio) = Ctrl + SHIFT+ F (Eclipse)

Ctrl + 1(Eclipse) = Resharper(Visual Studio)

3
Debss avatar Debss 17 Точки

Супер тема колега браво! Щеше да спести много нерви преди месец laugh

1
npaunov avatar npaunov 51 Точки

Хаха да, поизмъчих се и аз малко като куцо пиле с домат smiley, та реших да спестя малко мъки на тези след мен!

1
D.Kostadinov avatar D.Kostadinov 30 Точки

Здравейте,

Да се включа и аз с един shortcut. За да закоментирате и откометирате код CTRL + /.

3
malkstor avatar malkstor 348 Точки

Браво за темата, доста полезно :)

Въобще не бях забелязал, че по подразбиране се пуска 32-битовата версия, а когато се опитах да пусна 64-битовата изскочи грешка че пътят в environment variable-а JAVA_HOME не е правилен, та трябваше и това да оправя, преди да тръгне.

Понеже виждам че никой не е споменал как се сет-ва environment variable, ето за Windows 7 (при другите е доста близко):

1. Десен бутон на My Computer -> Properties

2. Горе в ляво -> Advanced system settings

3. Бутона най-долу Environment Variables

4. В горната част на прозореца User variables for <username> в колонката Variable има една с име JAVA_HOME, която при мен имаше грешна стойност. 

За да се коригира тя, трябва да намерите къде е инсталиран JDK при вас. При мен се намира в C:\Program Files\Java\jdk1.8.0_60

За да редактирате пътя до JDK цъкате на бутона Edit и слагате верния път. След като направих това, 64-битовата версия тръгна.

 

Едно допълнение - още в началото като инсталирах IntelliJ не се усети за пътя към JDK, за да може при създаването на нов проект да може да се избира инсталирания JDK като опция. Там трябваше пак да задам този път в настройките на програмата, но трябваше пътя да е към bin папката, т.е. C:\Program Files\Java\jdk1.8.0_60\bin. Горното с пътя към bin папката няма да проработи, трябва да е главната.

 

edit: Ако в command prompt-a като напишете javac или java ви каже че не разпознава командата, трябва да добавите пътя C:\Program Files\Java\jdk1.8.0_60\bin пак там при Environment Variables, само че в долната част където са System Variables. Намерете реда с име Path и добавете ";C:\Program Files\Java\jdk1.8.0_60\bin" (ако пътя е същия при вас и без кавичките). Важно е да не триете това, което вече има там, а само да добавите новия път с точка и запетая преди него. Това са системните пътища, които разни програми добавят, така че конзолата да разпознава командите им без значение в коя папка се намирате в момента.

edit2: Докато съм се сетил, още нещо - много бях озадачен като пуснах IntelliJ за пръв път и тръгнах да си създавам нов проект, но нямаше нищо в падащото меню Module SDK, т.е. не разпознаваше никаква версия. След кратко ровене в нета видях, че трябва на създадения празен проект да се иде в настройките с десен клик на проекта горе в ляво -> Open Module Settings, Project пак горе в ляво и от там с бутона New -> JDK да се избере директорията, в която се намира SDK-то, което искаме да ползваме (главната му папка, не bin). След това опцията се появява на всички следващи проекти, който се създават.

5
26/08/2015 21:59:11
KatyaMarincheva avatar KatyaMarincheva 572 Точки

Супер информация! Благодаря!

А някой да е открил за прословутата девета задача с PDF-a: Problem 9.*** Generate a PDF by External Library, какво може да се направи за да се виждат боите на картите в PDF-a? Ако ги печатам на конзолата се виждат - за PDF-a обаче е друга история:

ръннах всеки вариант код предлаган някога из форума за тази задача, опитвах Tiimes.ttf и Arial.ttf, според написаното из форума символите на боите се разпечатват вярно на конзолата (така е), но Adobe Acrobat (Pro в моя случай) не ги display–ва - вярно, няма ги в PDF-a. Символите се виждали обаче ако се отвори PDF-a с LibreOffice или OpenOffice - инсталирах и двете - LibreOffice отваря PDF-a във вида в който го отваря Adobe Acrobat, без символите на боите; OpenOffice отваря само някакво клинописно писмо вместо PDF-a....... Опитах и с online PDF viewer - сиимволите на боите ги няма в PDF-a :)

Та, някой да е открил решение?

Благодаря предварително!

Катя :)

1
npaunov avatar npaunov 51 Точки

Здравей,

Може би трябва да направим тема за домашното :)

Аз още не съм стигнал до тази задача.

0
KatyaMarincheva avatar KatyaMarincheva 572 Точки

Здравей Ники,

Ами то домашното си е повечето свързано с paths и command line - все неща, които са обсъдени в твоя пост - така че, започнал си го.

Иначе ето и задачите, ако решиш може да отвориш нова тема за задачите - организацията определено ти се получава!

(За 9-та задача гледах от тук: https://zvezdo.wordpress.com/2014/05/09/java-generate-a-pdf-by-external-library/ )

Отделно и този вариант опитах: https://github.com/Filkolev/SoftUni/blob/master/Java%20Basics/Homeworks/01.IntroToJava/09.GeneratePDF.java

Катя

1
27/08/2015 09:58:19
malkstor avatar malkstor 348 Точки

И аз зациклих на тази задача с картите, другите са лесни.

Ползвам Apache PDF Box за целта, но още не мога да направя unicode символите в PDF-а да се показват правилно. Май и аз ще пробвам с iText като Фил, благодаря за линка Катя :)

2
EBojilova avatar EBojilova 330 Точки

Зададох си въпроса и в темата за домашното Introduction to Java, но тъй като и тази тема е свързана го поствам и тука.

Относно задачата:JAR Archive + Console Execution

Успяла съм да създада PDF файла.

После се пробвам през конзолата да компилирам с javac и ми излиза съобщение error: package com.itextpdf.text.pdf does not exist
Търсих доста къде може да ми е грешката. Въвела съм:
PATH C:\Users\Elena\Java\jre1.8.0_45\bin
CLASSPATH C:\Users\Elena\Java\jre1.8.0_45\lib
в User variables в Environment variables
рестартирала съм копмютъра и пак дава същата грешка.
Пробвах двата пата да са и в System variables, пак същото.
Използвам Windows 7 и IntelliJ.
1
pataroka avatar pataroka 319 Точки

А къде си сложила itext библиотеката? Посочваш ли classpath към нея? Единият вариант е да сложиш пътя към нея в манифеста към .jar файла, другият да ползваш -cp параметър при компилирането и стартирането през конзолата:

javac.exe -cp /път към .jar-файл на библиотеката/; <- ако има повече референции се отделят с точка и запетая /друг път към .jar-файл на библиотеката/ -d <- дестинация на клас-файл(овете) - трябва да е предварително създадена

Още инфо по въпроса с примери...

1
EBojilova avatar EBojilova 330 Точки

Катето ми показа вчера как да реша проблема. По принцип itex библиотеката я бях импортвала през Project Structure, Libraries, +, java и се беше импортнала в папка External librarires.

Грешката беше, че не бях сложила библиотеката в Jar файла.  Като го създавам през Project Structure, Artifacts, +, Jar, .... на последния прозорец от дясно ми излиза една колона с Available Elements ?(даже си има и въпросителна, която не бях забелязала :)) и е трябвало да кликна върху елементите, които да ми се включат в JAR файла, в този случай библиотеката itex. Водих се по това видео, което много ми допадна, а точно тази стъпка липсва в него, тъй като  няма допълнителни библиотеки.

https://www.youtube.com/watch?v=sYdC5TvVv_s

(vij si skype- biah ti pusnala pokana predi niakolko dena, ako sam naluchkala imeto)

0
30/08/2015 13:59:05
pataroka avatar pataroka 319 Точки

Опааа... Имам 48 нови съобщения... Добре, че си ти да ми напомниш, че има и такова средство за комуникация :)

0
malkstor avatar malkstor 348 Точки

Още един полезен shortcut: fori + Tab - прави for цикъл с counter-a i, който сме свикнали да виждаме в C# :)

5
EBojilova avatar EBojilova 330 Точки

Реших преди малко Cognate Words.

2 теста доста дълго време не ми минаваха, заради лимит на времето.

Установих, че конкатенацията в Java е по-бърза отколкото String.format

След като сложих конкатенаця, тестовете минаха.

В C# изрично ни бяха казали да избягваме конкатенация и изобщо нямаше да ми дойде на ум, че там е проблема, докато не пробвах всички други варианти за лимит на времето.

1
KatyaMarincheva avatar KatyaMarincheva 572 Точки

Да, и в stackoverflow така пишат за Java:

http://stackoverflow.com/questions/925423/is-it-better-practice-to-use-string-format-over-string-concatenation-in-java

Format = 1290 millisecond
Concatenation = 115 millisecond
String Builder = 130 millisecond

Но на мен и String.format ми работи, а за него пишат:

"I'd suggest that it is better practice to use String.format(). ...."

"If you are looking for readability the String.format thing is the much clearer"

Тъй че аз си оставам на String.format засега.

1
06/09/2015 17:26:38
enevlogiev avatar enevlogiev 1168 Точки

В C# изрично ни бяха казали да избягваме конкатенация и изобщо нямаше да ми дойде на ум, че там е проблема, докато не пробвах всички други варианти за лимит на времето.

Елена, става въпрос за много повторения на конкатенация и ако може, да се замести със СтрингБилдър. Сигурен съм, че си наясно де ... ; )

От друга страна, форматирането е съвсем друга хава. Освен да се създаде съвсем нов стринг, оригиналния трябва да се парсне, за да се разбере къде какво има за наместване. В C# String.Format всъщност директно използва .AppendFormat метода на стрингбилдъра, за Джава не знам.

0
EBojilova avatar EBojilova 330 Точки

Погледнах ти решението. Доста хитро си изнесла третия вложен цикъл и явно това компенсира String.format. 

Аз не съм ползвала конкатенация в C#, винаги съм я избягвала, но е добре да се има в предвид, че в Java седят по друг начин нещата.

0
ivaylo_penev avatar ivaylo_penev 11 Точки

https://www.jetbrains.com/idea/docs/IntelliJIDEA_ReferenceCard.pdf тук има всички shortcut-и на idea-та  :) 

4
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.