Мазмұны:

Raspberry Pi үшін Java -ның тиімді дамуы: 11 қадам (суреттермен)
Raspberry Pi үшін Java -ның тиімді дамуы: 11 қадам (суреттермен)

Бейне: Raspberry Pi үшін Java -ның тиімді дамуы: 11 қадам (суреттермен)

Бейне: Raspberry Pi үшін Java -ның тиімді дамуы: 11 қадам (суреттермен)
Бейне: Урок №3. Долгосрочная подготовка: план работы, разработка проекта, налаживание командной работы 2024, Шілде
Anonim

Бұл нұсқаулық Raspberry Pi үшін Java бағдарламаларын құрудың өте тиімді әдісін сипаттайды. Мен Java мүмкіндіктерін дамыту үшін төмен деңгейлі құрылғы қолдауынан көп ағынды және желіге негізделген бағдарламаларға дейін қолдандым. Бұл әдіс тиімді ғана емес, ақысыз!

Негізінде бұл әдіс NetBeans көмегімен қашықтан даму. NetBeans Wifi арқылы Raspberry Pi -ге қосылған жұмыс станциясында (Raspberry Pi емес, жұмыс үстелі немесе ноутбук) жұмыс істейді. Барлығы дұрыс орнатылғаннан кейін сіз NetBeans -те Java бағдарламасын жаза аласыз, содан кейін бағдарламаны жұмыс станциясында бір рет басу арқылы құрастырады және құрады, бағдарламаны Pi -ге жүктейді, бағдарламаны Pi -де іске қосады және NetBeans консоліне шығарады.. Сиқыр! Сіз тіпті жұмыс істеп тұрған бағдарламаны жөндеуге, тоқтау нүктелерін орнатуға және айнымалы мәндерді тексеруге болады. Тағы да сиқыр!

Бұл кіріспенің қалған бөлігінде Java -ді қолдану мотивациясы және NetBeans көмегімен қашықтан әзірлеу сипатталған. Егер сізге мотивация қажет болса, оқыңыз. Егер сізге бәрібір болса, 1 -қадамға өтіңіз.

Неліктен Java Raspberry Pi -де қолданылады?

Raspberry Pi үшін көптеген бағдарламалау тілдері бар, бірақ мен талқылауды жеке бағдарламаларға бағытталған, көп тапсырмаларды қолдайтын, аппараттық және желіге кіруге рұқсат беретін «кәсіби деңгейдегі» бағдарламалау тілдерімен шектеймін, бұл Java, Python немесе C/C ++. Raspbian -дың соңғы шығарылымдарына осы тілдердің барлығын әзірлеу мен қолдау уақыты кіреді.

Python, ең болмағанда ішінара жаңа бағдарламашыларға үйренуге ыңғайлы болу үшін, Pi-де қолдану үшін «ілгерілетіледі». Мен тәжірибелі бағдарламашымын және оның бірқатар сипаттамаларына субъективті ұнамауына байланысты Python -ды ұнатпаймын, мысалы, динамикалық теру. Python -ның бір ерекшелігі бар, ол маған ұнамайды - бұл өнімділік. Бұл дерек көзі Java әрқашан Python 3 -тен жылдам екенін көрсетеді, және іс жүзінде тапсырмаға байланысты жүздеген есе жылдам жұмыс істей алады.

Менің ойымша, C - бұл «жоғары деңгейлі машина тілі», яғни жүйелік аппаратураға немесе кем дегенде операциялық жүйеге өте жақын нәрсе. Сіз кез келген нәрсені жасай аласыз және оны мүмкіндігінше тез жасай аласыз; шын мәнінде, бұл дереккөз C -дің Java -ге қарағанда 7X жылдамдығына дейін жұмыс істей алатынын болжайды. Мен сондай -ақ С -ны ұнатпаймын, өйткені мен оның кейбір ерекшеліктерін (субъективті түрде) ұнатпаймын, олар маған жасырын, архаикалық немесе екеуін де ұнатады; мысалы, анық көрсеткіштер. Объективті түрде, сіз кез келген нәрсені жасай алатындығыңыз сіздің жадты қайта жазудан және бағдарламаны немесе тіпті бүкіл жүйені бұзудан аулақ түсініксіз қате екеніңізді білдіреді (мысалы, нашар көрсеткіш арифметикасы немесе қате жазба). Java мұндай қауіптердің алдын алады, сондықтан Java қауіпсіз. Менің ойымша, қауіпсіздік бағдарламашының өнімділігін арттырады. Мен C ++-ны C қауіптерін жою үшін ештеңе жасамайтын C айналасындағы объектіге бағытталған «орауыш» деп санаймын.

Қорытынды: Java Python -ға қарағанда жылдамырақ. Java C -ге қарағанда қауіпсіз.

Java пайдалану кезінде шектеулер бар ма?

Әзірге мен Java -де Python -да жасай алатын барлық нәрсені жасай алдым. С тілінде Java -де жасай алмайтын нәрселер бар, бірақ тағы да мен жасағым келгеннің барлығын Pi қауымдастығындағы Java жанкүйерлері шешті. Мен мысалды келесі қадамда ұсынамын. Айтпақшы, мен датчиктерді тек Python -да (немесе Arduino үшін C/C ++) жеткізетін жеткізушілерден сенсорларды сатып алдым, сондықтан Java эквивалентін жазуға тура келді; қосымша күш міндетті түрде өнімді емес, бірақ сенсордың жұмысы туралы жақсы түсінікке әкелуі мүмкін.

Неліктен NetBeans негізінде қашықтан даму керек?

Мен NetBeans негізіндегі қашықтан әзірлеу Raspberry Pi үшін Java қолданғанда өнімділікті едәуір арттыратынын білдім. Сіз «кәсіби» көмегімен қашықтан дамытудың арқасында Java -ның өзіне тән ерекшеліктеріне байланысты жылдам және қауіпсіз бағдарламалар жасау үшін осы әдісті қолдана алатыныңызға сенімдімін, мен оларды тапқан басқа тәсілдерге қарағанда тезірек жазып, құрып және күйін келтіре аласыз. баға «NetBeans интеграцияланған даму ортасы (IDE).

Бұл «басқа тәсілдерді» қысқаша талқылау пайдалы болуы мүмкін. Барлығы Raspberry Pi -де пернетақта, тінтуір немесе дисплей қосылмаған негізгі критерийлерге сәйкес келеді. Бұл критерийлердің көптеген себептері бар, бірақ менің негізгі себебім - мен мобильді роботтарды әзірлеймін және мен әзірлену кезінде Pi -дің роботтық қосалқы жүйелерден басқа кез келген перифериялық құрылғыларға қосылуын қаламаймын.

Raspbian құрамына кіретін VNC сервері қашықтан жұмыс істеу формасына мүмкіндік беретін қашықтағы графикалық интерфейсті (GUI) қамтамасыз етеді, мұнда жұмыс станциясында тек қашықтағы GUI жұмыс істейді, ал қалғаны Pi -де жазылады, құрастырылады және құрылады. VNC көмегімен BlueJ, Geany және Greenfoot сияқты Raspbian тілінде жеткізілетін Java мүмкіндіктері бар құралдарды қолдану оңай. Олардың кейбіреулерін IDE деп санауға болады; дегенмен, мен оларды кәсіби деңгейден алыс деп есептеймін.

Raspberry Pi -де Eclipse немесе NetBeans сияқты кәсіби деңгейдегі Java IDE орнатуға және оны қашықтан VNC арқылы пайдалануға техникалық мүмкіндік бар. Есептер мен ақылға қонымды нәтижелер, мұндай IDE -дің жадының үлкен көлемі мен процессордың қуаты, сондай -ақ қашықтағы GUI енгізген желінің кідірісі арқасында нәтижелердің көңілсіз болатынын көрсетеді.

Eclipse де, NetBeans те жұмыс станциясында өте жақсы жұмыс істейді. Eclipse көмегімен код жазу - жағымды тәжірибе, дегенмен бағдарламаны құру мүмкін емес; бағдарламаны жүктеу Eclipse -тен тыс жерде болуы керек; Pi бағдарламасын орындау Eclipse -тен мүлдем тәуелсіз. Жалпы нәтиже-бұл қашықтан отладтауды қолдай алмайтын көп сатылы, ауыр дерлік процесс. NetBeans-те кіріктірілген компиляция, құрастыру, жүктеу, қашықтан орындау және қашықтан отладтау бар, бұл оны жақсы әдіс етеді.

1 -қадам: Raspberry Pi орнатыңыз

Қашықтықтан дамыту әдісін қолдану үшін сіз Raspberry Pi мақсатты баптаудан бастауыңыз керек. Raspberry Pi орнатуға көмектесетін көптеген ресурстар бар, соның ішінде Instructables. Pi (және басқаларын) орнатудың негіздері үшін мына жерден қараңыз.

Бұл нұсқаулық сізді болжайды

  • соңғы Raspbian орнатыңыз; Pi пайдаланушы идентификаторы мен паролін жазғаныңызға көз жеткізіңіз
  • Wi -Fi орнатыңыз және маршрутизаторға қосылыңыз (қараңыз); Pi IP мекенжайын жазғаныңызға көз жеткізіңіз
  • жұмыс станциясынан Pi -ге қашықтан кіруге рұқсат беру үшін SSH қосыңыз (мұны қараңыз)

Орнатуды аяқтағаннан кейін сіз дисплейді, пернетақтаны және тінтуірді Pi -ден ажыратып, ажыратуға болады. Бұл қашықтан дамудың басты артықшылықтарының бірі. Сіз кез келген Wi -Fi қосқышын қосулы күйде қалдыруыңыз керек (әрине, Pi үлгісі 3 немесе Pi Zero W үшін қажет емес), содан кейін Pi қосуға болады.

Тексеру үшін жұмыс станциясында ssh клиентін ашыңыз, мысалы, MacOS немесе Windows жүйесінде терминал. Содан кейін келесі пішінмен ssh (қауіпсіз қабық) пәрменін енгізіңіз:

ssh the_pi_ip_address -l_pi_user_id

Сіз Pi пайдаланушы идентификаторының құпия сөзін енгізуді сұрауыңыз керек. Егер ешқандай сұрау шықпаса, ssh пәрменінде дұрыс IP мекенжайын енгізгеніңізді тексеріңіз. Құпия сөзді енгізіңіз (ол жасырылады), содан кейін сіз келесідей көрінетін Pi қабықша шақыруын көресіз:

pi@raspberrypi: ~ $

Егер сіз шақыруды көрмесеңіз, пайдаланушы идентификаторы мен құпия сөзді тексеріңіз.

Енді сіз Java жұмыс уақытының жолын тауып, әдепкі нұсқасы Java 8 екенін растауыңыз керек (соңғы Raspbian үшін бұл дұрыс болуы керек). Java жұмыс уақытының жолын табу үшін ssh клиентіне пәрменді енгізіңіз

sudo update-alternatives-java көрсету

Сіз келесі екі жолға ұқсас жауапты көресіз:

java - автоматты режим

сілтеменің ең жақсы нұсқасы/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/bin/java

Екінші жолдағы «-8-» әдепкі жұмыс уақыты Java 8 екенін растайды. Жолды екінші жолға жазыңыз, себебі сізге NetBeans бағдарламасын қашықтан дамытуға конфигурациялау қажет болады.

Егер әдепкі жұмыс уақыты Java 8 болмаса, ssh клиентіне Java 8 -ге ауысу үшін келесі пәрменді енгізіңіз (егер ол орнатылған болса)

sudo update-alternatives-config java

2 -қадам: NetBeans жүйесін жұмыс станциясына орнатыңыз

Енді сізге жұмыс станциясына NetBeans орнату қажет. Жұмыс станциясының шолушысын NetBeans жүктеу бетіне бағыттаңыз. Сіз Java -ның екі басылымын, сондай -ақ басқа тілдерді қолдайтын бірнеше мүмкін топтамаларды көресіз. Raspberry Pi үшін Java әзірлеуі үшін сізге Java SE қажет, бірақ сіз Java EE немесе All пакетін ала аласыз. Сіз қай пакетті алғыңыз келетінін шешкеннен кейін сәйкес Жүктеу түймесін басыңыз. Жұмыс станциясы ОЖ үшін қосымша орнату нұсқауларын мына жерден таба аласыз.

NetBeans орнатқаннан кейін оны іске қосыңыз (ол орнатудан кейін автоматты түрде жасалуы мүмкін). Сіз суретте көрсетілгендей NetBeans негізгі терезесін көруіңіз керек. Сурет Mac компьютерінде түсірілген, ал Windows -та негізгі терезе басқаша көрінуі мүмкін.

NetBeans сәтті орнатылып, іске қосылғаннан кейін келесі қадамға өтіңіз.

3 -қадам: Raspberry Pi -ді NetBeans -те қашықтағы платформа ретінде конфигурациялаңыз

Raspberry Pi -ді NetBeans -те қашықтағы платформа ретінде конфигурациялаңыз
Raspberry Pi -ді NetBeans -те қашықтағы платформа ретінде конфигурациялаңыз

Келесі әрекеттер Raspberry Pi -ді NetBeans үшін қашықтағы Java SE платформасы ретінде теңшейді. Бұл NetBeans -ке Pi бағдарламасында Java бағдарламаларын жүктеуге және орындауға мүмкіндік береді. Сіз мұнда жалпы сипаттаманы таба аласыз.

ЕСКЕРТПЕ: Осы және келесі қадамдарда мен конфигурация мен кодтаудың әр түрлі аспектілері үшін өз ортама тән мәндерді көрсетемін; сенікі басқаша болатыны анық.

Pi -ді қашықтағы платформа ретінде конфигурациялау үшін:

  1. NetBeans негізгі мәзір жолағында Құралдар -> Java платформалары тармағын таңдаңыз. Сіз Java Platform Manager қалқымалы терезесін көресіз (бірінші сурет).
  2. Төменгі сол жақта Платформа қосу түймесін басыңыз. Сіз Java платформасын қосу [платформа түрі] қалқымалы терезесін көресіз (екінші сурет).
  3. Java Remote Java Standard Edition таңдаңыз. Келесі түймесін басыңыз. Сіз Java платформасын қосу [қашықтағы платформаны орнату] қалқымалы терезесін көресіз (үш суретте мен өрістерге өз ортама сәйкес мәндерді енгізгеннен кейін қалқымалы терезе көрсетіледі).
  4. Платформа атауы өрісіне Pi атауын енгізіңіз. Сіз кез келген нәрсені қолдана аласыз, бірақ ол бірегей болуы керек.
  5. Хост өрісіне 1 -қадамда табылған Pi үшін IP мекенжайын енгізіңіз.
  6. «Пайдаланушы аты» өрісіне 1 -қадамда пайдаланылған пайдаланушы атын енгізіңіз.
  7. «Құпия сөзді растауды пайдалану» таңдалған күйінде қалдырыңыз және «Құпия сөз» өрісіне 1 -қадамда жасаған құпия сөзді енгізіңіз.
  8. Қашықтағы JRE жолы өрісінде сіз Pi жұмысындағы Java жұмыс уақытының жолының көп бөлігін енгізуіңіз керек. 1-қадамда/usr/lib/jvm/jdk-8-oracle-arm32-vfp-hflt/jre/bin/java болды. Дегенмен, өріс мәнінде /bin /java өшіру керек.
  9. NetBeans іске қосылатын бағдарламаны Жұмыс директорының өрісінде анықталған Pi жұмыс каталогына жүктейді. Әдепкі бойынша/the_Pi_user_ID/NetBeansProjects/және ол өте қолайлы. Қаласаңыз, басқа нәрсені қолдануға болады, бірақ ол_Pi_user_ID үшін қол жетімді болуы керек (сурет 3).
  10. Қалқымалы терезенің төменгі оң жағындағы Аяқтау түймешігін басыңыз. Өңдеуден кейін сіз Java Platform Manager қалқымалы терезесін тағы бір рет көруіңіз керек. Енді сіз қашықтағы Java SE (жоғарыдағы 4 -әрекетте қолданылған атауыңызбен) Remote Java SE (төртінші сурет) санатында көруіңіз керек.
  11. NetBeans пен Pi арасындағы байланысты тексеру үшін төменгі сол жақтағы Test Platform түймесін басыңыз. Алдымен сіз қашықтағы платформаны тексеру туралы қалқымалы терезені көресіз. Сәтті болса, сіз қосылым сәтті орнатылғанын көрсететін екінші қалқымалы терезені аласыз. Олай болмаса, жоғарыдағы 5-9 әрекеттерде Java платформасын қосу [қашықтағы платформаны орнату] қалқымалы терезесіне енгізілген ақпаратты тексеру және түзету қажет. Сіз мұны Java Platform Manager қалқымалы терезесінен жасай аласыз; жай ғана Pi платформасын таңдаңыз, содан кейін қалқымалы терезенің оң жағындағы өрістерді өңдеңіз.
  12. Сәтті қосылудан кейін Java Platform Manager қалқымалы терезесінде Жабу түймешігін басыңыз. Енді сіз NetBeans негізгі терезесін көресіз.

Енді нағыз қызық басталуы мүмкін!

4 -қадам: Жұмыс станциясында Java жобасын жасаңыз

Бұл NetBeans немесе Java -ны қалай қолдану керектігін толық түсіндіру үшін арналмаған, бірақ мен жұмыс станциясында NetBeans -те бағдарлама жазу мен ақырында бағдарламаны Raspberry Pi -де қашықтан іске қосу бойынша минималды әрекеттерді сипаттаймын.

NetBeans -те алдымен бағдарламаның Java сыныбын сақтау үшін жоба құру керек. Сонымен қатар, Java -да сабақтар ұйым мен қауіпсіздікті қолдау үшін пакеттерде орналасқан. Жобаны құру және қосымша пакет пен сынып файлын жасау үшін:

  1. NetBeans негізгі терезесінде жаңа жоба белгішесін нұқыңыз (солдан 2 -ші). Сіз Жаңа жоба [жобаны таңдау] қалқымалы терезесін көресіз (бірінші сурет).
  2. Әдепкі мәндер (Санат: Java, Жоба: Java қосымшасы) бұл мысалға сәйкес келеді, сондықтан Келесі түймесін басыңыз. Сіз жаңа Java қосымшасы [аты мен орналасқан жері] қалқымалы терезесін көресіз (екі суретте менің мысал үшін мәндер көрсетілген). ЕСКЕРТПЕ: Мен пайдаланушы туралы ақпаратты түрлі -түсті төртбұрыштардың көмегімен өзгерттім.
  3. Жобаның атауы өрісіне өзіңіз таңдаған Java жобасының жарамды атын енгізіңіз. Атау бас әріптен басталуы керек, ал конвенция сөздерді біріктіру кезінде түйе қорабын ұсынады.
  4. Жобаның орналасуы өрісі жобаның файлдық жүйеде орналасқан жерін басқарады. Әдепкі амалдық жүйеге байланысты өзгереді, бірақ қабылдауға қауіпсіз.
  5. Project Folder өрісі жобаның қалтасының атауын басқаруға мүмкіндік береді. Менің ойымша, Орын өрісі мен Атау өрісінің қосындысы болып табылатын әдепкі мәнді пайдалану.
  6. «Негізгі сыныпты құру» құсбелгісі қойылса, NetBeans автоматты түрде жобаның атымен буманы және негізгі сынып файлын (пәрмен жолынан іске қосуға болатын бағдарлама) жасайды. Менің ойымша, әдетте, бұл тексерілмеуі керек, бірақ бұл жағдайда мен оны тексеріп қоямын, бұл басқаша әрекеттерді болдырмайды (екінші сурет).
  7. Жобаны, буманы және негізгі сынып файлын жасау үшін Аяқтау түймешігін басыңыз. Енді NetBeans негізгі терезесінің сол жақ жоғарғы тақтасы сіздің жобаңызды көрсетеді, ол бір пакетті қамтиды, ол өз кезегінде main () әдісімен бір сыныпты файлды қамтиды. Жоғарғы оң жақ тақтада NetBeans автоматты түрде жасайтын негізгі сыныптың (бағдарламаның) әдепкі бастапқы коды бар (үшінші сурет).

Осы кезде сіз негізгі әдіске бірнеше код жаза аласыз және оны жұмыс станциясында іске қосасыз. Бұл кейде қажет болуы мүмкін, бірақ бұл нұсқаулыққа қажет емес, сондықтан келесі қадамға өтіңіз.

5 -қадам: Raspberry Pi -де қашықтан іске қосылатын NetBeans жобасын конфигурациялаңыз

NetBeans жобасын және оның құрамындағы бағдарламаны Raspberry Pi -де қашықтан іске қосу үшін конфигурациялау үшін келесі әрекеттерді орындаңыз:

  1. Жобаның мәзірін шығару үшін NetBeans негізгі терезесінің Жобалар тақтасындағы жобаны оң немесе екі саусақпен басу (жұмыс станциясының ОЖ байланысты). Сіз Project Properties қалқымалы терезесін көресіз (суретте менің мысалға сәйкес мәндері бар қалқымалы терезе көрсетілген).
  2. Сол жақтағы Санаттар астында Іске қосу пәрменін таңдаңыз.
  3. Конфигурация өрісінің оң жағындағы Жаңа түймесін басыңыз. Жаңа конфигурация жасау қалқымалы терезесінде конфигурацияның атын енгізіп, ОК түймесін басыңыз. Атау кез келген болуы мүмкін; Мен платформаның атауын қайта қолдандым («Менің Пи»). Тағы да сіз Properties қалқымалы терезесін көресіз.
  4. Runtime Platform өрісінің оң жағындағы ашылмалы белгішені нұқыңыз. Қалқымалы терезеде бұрын жасаған қашықтағы платформаны таңдаңыз (менің ортада «Менің Пи»).
  5. Жобаның қашықтағы платформасын орнату үшін OK түймесін басыңыз. Сіз тағы бір рет негізгі терезені көресіз.

Сіз енді кодты жазуға және бағдарламаны қашықтан іске қосуға дайынсыз.

6 -қадам: Жұмыс станциясында Java бағдарламасын жазыңыз және оны Raspberry Pi -де іске қосыңыз

NetBeans негізгі терезесіндегі оң жақ панель NetBeans жасаған негізгі сынып файлын көрсетеді. Сынып файлының негізгі әдісіне қарапайым басып шығару мәлімдемесін енгізіңіз (бірінші сурет). Бұл енді қарапайым нәрсе болса да, бірдеңе жасайтын толық Java бағдарламасы.

Бағдарламаны Pi-де іске қосу үшін негізгі терезеде Іске қосу белгісін (солға бағытталған жасыл көрсеткі) шертіңіз. NetBeans кодты құрастырады, jar файлын құрады, қашықтағы платформа анықтайтын Raspberry Pi -ге jar файлын жүктейді, бағдарламаны Pi -де орындайды, бағдарламаның шығуын (System.out) түсіреді және сол шығуды NetBeans -ке жаңғыртады. Негізгі терезенің төменгі оң жағындағы шығыс тақтасы (екінші сурет).

Сіз қазір Raspberry Pi -де жобалар жасау бойынша дағдыларыңызды едәуір кеңейттіңіз! Бірақ күте тұрыңыз …. Тағы бар!

7 -қадам: Java бағдарламасын NetBeans көмегімен жөндеу

NetBeans сияқты өндірістік интеграцияланған ортаның ең қуатты ерекшеліктерінің бірі - бұл бағдарламаны жұмыс кезінде жөндеу. NetBeans қашықтан жұмыс кезінде жөндеу құралдарының толық жиынтығын пайдалануға мүмкіндік береді. Бұл бағдарламаның «маңызды» немесе «қиын» орындарында тоқтау нүктелерін орнатуды және ағымдағы орындалу күйіндегі айнымалылардың мәнін тексеруді қамтиды.

Соңғы қадамдағы қарапайым бағдарлама отладтауды көрсету үшін тым қарапайым, сондықтан мен бағдарламаға қосымша кодты қостым. Қосымша код екі айнымалыны қосады.

Отладка құралдарын пайдалану үшін алдымен бір немесе бірнеше тоқтау нүктелерін орнату керек. Тоқтау нүктесін орнату үшін орындауды тоқтатқыңыз келетін жол нөмірін нұқыңыз; қызыл тіктөртбұрыш белгішесі пайда болады, ал бүкіл жол қызыл фонға ие болады (бірінші сурет).

Pi -де жұмыс істейтін бағдарламаны күйге келтіру үшін NetBeans негізгі терезесіндегі Отладка белгісін (Іске қосу белгішесінің оң жағында) шертіңіз. Қалыпты орындалудағыдай, NetBeans компиляциялайды, құрастырады, жүктейді, орындайды, шығуды түсіреді және сол шығуды жаңғыртады. Бірақ отладтау кезінде NetBeans тоқтау нүктелерінде орындалуды тоқтатады және орындалу күйін тексеруге мүмкіндік береді (оң жақ төменгі жағында айнымалылар тақтасын көрсететін екінші сурет).

Үзіліс нүктесі бар жолдағы нұсқауларды орындамас бұрын орындау тоқтау нүктесінде тоқтайды. Жасыл фон келесі орындалатын операторды көрсетеді. Осылайша, менің мысалда, 9 -жолдағы тоқтау нүктесімен а айнымалысы әлі жоқ, шамасы аз.

Енді курсорды негізгі терезедегі отладка мәзірінің белгішесінің үстіне апарыңыз (Жөндеу белгішесінің оң жағындағы қос көрсеткі төмен түсетін бірінші белгіше) және «Жылжыту» белгішесін басыңыз (оның фонында көк құжат және сағат тіліне қарсы жасыл көрсеткі бар) алдыңғы орында). [ЕСКЕРТПЕ: егер сіз NetBeans негізгі терезесін жеткілікті кең етсеңіз, отладтау мәзірі кеңейеді және отладтау әрекетінің белгішелері Жөндеу белгішесінің оң жағында көрсетіледі.] NetBeans мәлімдемені тоқтау нүктесінде орындайды және келесі мәлімдемеге дейін орындауды тоқтатады. Енді сіз a айнымалысы бар екенін және күтілетін мәнге ие болатынын көресіз (сурет 3).

Аудару белгішесін екі рет нұқыңыз. Сіз барлық үш айнымалының мәндері бар екенін көресіз; c әлі нөлге тең екенін ескеріңіз (төртінші сурет).

«Жылжыту» белгішесін бір рет нұқыңыз. Сіз c айнымалысы сәйкес мәнге ие екенін көресіз, яғни a және b айнымалысының қосындысы (бесінші сурет).

Соңында, отладка мәзірінде Іске қосу белгішесін басыңыз (ақ көрсеткі бар жасыл шеңбер). Бұл орындалудың келесі тоқтау нүктесіне немесе бағдарламаның соңына дейін, қайсысы бірінші болып келсе, жалғасуына әкеледі. Енді Шығару тақтасы пайда болады және қалыпты орындалумен бірдей нәтижені көрсетеді, бұл жағдайда баспа мәлімдемесіндегі мәтін.

8 -қадам: Бағдарламаны NetBeans -тен тәуелсіз орындаңыз

Бағдарламаны Raspberry Pi -де NetBeans -тің «көмегінсіз» немесе «араласуынсыз» орындағыңыз келетін уақыт келуі мүмкін. Бұл өте қарапайым. Алдымен Pi -ге ssh клиентін ашыңыз.

3 -қадамда NetBeans сіздің жобалық құмыраңызды Pi жұмыс каталогына орналастыратынын есте сақтаңыз. Пайдаланушыға арналған әдепкі база/home/pi/NetBeansProjects болып табылады. Арнайы каталог сіздің жобаңызбен бірдей атқа ие. NetBeans құмыраны dist деп аталатын ішкі каталогқа орналастырады. Менің мысал үшін, толық жол/home/pi/NetBeansProjects/MyRemoteProg/dist. Pi -дегі ssh клиентінде бағдарламаны орындау үшін java командасын 'jar' опциясымен пайдалануға болады:

java -jar /home/pi/NetBeansProjects/MyRemoteProg/dist/MyRemoteProg.jar

Сіз ssh клиентінде орындалу нәтижесін көресіз; менің мысалда шығыс болады

Raspberry Pi -ден сәлем!

Бұл жұмыс істейді, себебі jar файлындағы ақпарат банктегі қай негізгі сыныпты орындау керектігін анықтайды.

Сіз жұмыс каталогын (cd арқылы) jar файлының орнына өзгерте аласыз, содан кейін дәл сол нәтижелерді шығару үшін қысқа пәрмен шығара аласыз.

java -jar MyRemoteProg.jar

9 -қадам: құрастырыңыз және жүктеңіз, бірақ NetBeans арқылы бағдарламаны орындамаңыз

Сіз NetBeans бағдарламасын құруды және жүктеуді қалайтын, бірақ оны орындамайтын жағдайлар бар. Осындай жағдайдың бірі сіздің бағдарламаңызға пернетақтаны енгізу қажет болғанда пайда болады. Егер бұлай болса, алдыңғы қадамдағы техниканы қолдана отырып, сіз құрастырып, жүктеп алғаннан кейін, бағдарлама Raspberry Pi -де орындалады және Pi -ден пернетақтаның кіруін күтеді, бірақ, әрине, Pi -ге бекітілген пернетақта жоқ, сондықтан бағдарлама тоқтап қалады - жақсы емес.

Бағдарламаны орындау үшін басқаша техниканы қолдану керек. Негізінде сіз ештеңе жасамайтын негізгі «классикалық» файл жасайсыз және оны жүктеуден кейін орындалатын бағдарлама ретінде анықтайсыз. Бұл жағдайда «муляж» орындалады, содан кейін сіз өзіңіздің «нақты» бағдарламаңызды тікелей Pi -де іске қоса аласыз.

Бұл техниканы қолдану үшін алдымен жаңа негізгі класс жасаңыз:

  1. Жоба мәзірін 5-қадамда келтіріп, New-> Java Main Class түймесін басыңыз. Сіз Java негізгі класының жаңа қалқымалы терезесін көресіз.
  2. Сынып атауы өрісіне атын енгізіңіз. Атау сізге ұнайтын кез келген нәрсе болуы мүмкін; Мен «Маякты» қолдандым. Пакет өрісі сыныптың бумасын анықтауға мүмкіндік береді; өрістің оң жағындағы ашылмалы тізім арқылы пакетті таңдайсыз. Класс сіздің «нақты» бағдарламаңызбен бір пакетте немесе басқа пакетте болуы мүмкін; Мен жаңа сыныпты сол пакетке қойдым. Аяқтау түймешігін басыңыз. Енді сіз NetBeans негізгі терезесін жаңа файл жоғарғы оң жақ панельде көресіз (бірінші сурет). Мен Pi -де жүгіру туралы қарапайым басып шығару мәлімдемесін қостым, бірақ шын мәнінде ештеңе қажет емес.

Жүктелгеннен кейін «манекенді» іске қосу үшін сіз оны «әдепкі бойынша орындалатын негізгі класс» етуіңіз керек:

  1. Жоба сипаттарын 5 -қадамдағыдай ашыңыз. Іске қосу санатын таңдаңыз. Негізгі класс өрісінің оң жағындағы Шолу түймешігін басыңыз. Сіз негізгі сыныптарды шолу қалқымалы терезесін көресіз (екінші сурет).
  2. «Манекен» сыныбын таңдаңыз. Негізгі сыныпты таңдау түймешігін басыңыз. Сіз тағы да жобаның қасиеттерін көресіз.
  3. OK түймесін басыңыз. Сіз негізгі терезеге ораласыз.

Енді «Іске қосу» белгішесін басқанда, NetBeans бүкіл жобаны сақтайды/құрастырады, барлық сынып файлдары бар құмыраны Pi -ге жүктейді және «муляж» класын орындайды (сурет 3).

Нақты бағдарламаңызды Pi -де орындау үшін сіз енді java пәрменін 'classpath' опциясымен пайдалануыңыз керек, ол орындалатын негізгі сыныпты нақты анықтауды қажет етеді. Ssh клиентінен сіздің жобаңыз үшін dist каталогына өтіңіз. Дұрыс команда келесі түрде болады:

java -cp project_name.jar package_name.class_name

Project_name жобаға қатысты екені анық; бұл жаңа жобамен жұмыс жасау кезінде ғана өзгереді. Әрине, pack_name бумаға қатысты, ал class_name орындалатын негізгі классқа сілтеме жасайды. Жоғарыда айтылғандай, жобада көптеген пакеттер болуы мүмкін. Сол сияқты, пакетте көптеген сыныптар болуы мүмкін және олардың барлығы командалық жолдан орындалатын негізгі сыныптар немесе бағдарламалар болуы мүмкін. Осылайша, «класс жолы» әдісі көптеген сыныптары бар күрделі бағдарламаларды әзірлеу үшін өте пайдалы, олардың кейбіреулері тек бірліктерді тестілеуге көмектесу үшін негізгі сыныптар болып табылады.

Келесі команда менің мысал бағдарламамды орындайды:

java -cp MyRemoteProg.jar myremoteprog. MyRemoteProg

10 -қадам: NetBeans кітапханасын басқаруды қолданыңыз

Күрделі бағдарламалардың ең қиын, бірақ маңызды аспектілерінің бірі - кітапханалармен жұмыс жасау, яғни басқа біреу жазған код. NetBeans кітапхана менеджментінің ауыртпалығын жоюдың керемет жұмысын жасайды.

Мен Java бағдарламаларына Raspberry Pi GPIO, I2C шинасына және басқа аппараттық енгізу -шығаруға рұқсат беретін Pi4J мысалын қолданамын. Pi4J - бұл Java көмегімен Pi -де көптеген қызықты нәрселер жасауға қолдаудың бір мысалы.

Сіз алдымен кітапхананы жұмыс станциясына жүктеуіңіз керек. Pi4J жүктеу бетін қараңыз. Pi4J -ді Pi -ге орнатпағандықтан, zip -ді жұмыс станциясына жүктеңіз. Zip жүктелгеннен кейін оны ашық түрде ашу қажет болуы мүмкін немесе болмауы мүмкін.

Енді сіз NetBeans -те «жаһандық кітапхана» жасауыңыз керек:

  1. NetBeans негізгі мәзірінде Құралдар -> Кітапханалар түймешігін басыңыз. Сіз Ant Library Manager менеджер қалқымалы терезесін көресіз (бірінші сурет).
  2. Төменгі сол жақтағы Жаңа кітапхана түймесін басыңыз. Сіз Жаңа кітапхана қалқымалы терезесін көресіз (екінші сурет).
  3. Қолданғыңыз келетін мағыналы атауды теріп, OK түймесін басыңыз. Сіз Ant Ant Library Manager қалқымалы терезесін тағы бір рет көресіз. Ол енді сіз жасаған жаңа кітапхананы көрсетеді (сурет 3).
  4. Оң жақтағы JAR/қалтаны қосу түймесін басыңыз. Сіз JAR/қалтаны қарау қалқымалы терезесін көресіз (төртінші сурет).
  5. Pi4j-core.jar тармағына өтіңіз, содан кейін таңдаңыз. Содан кейін JAR/Folder қосу түймесін басыңыз. Сіз Ant Library Manager қалқымалы терезесіне ораласыз.
  6. Ant Library Manager қалқымалы терезесінде OK түймесін басыңыз. Сіз NetBeans негізгі терезесіне ораласыз.

Сіз кітапхананы кез келген жобада қолдануға болатындай етіп қостыңыз. Енді сіз кітапхананы жобаңызға қосуыңыз керек:

  1. Жоба сипаттары қалқымалы терезесін ашыңыз (5 -қадамды қараңыз) және Кітапханалар санатын таңдаңыз (бесінші сурет).
  2. Қалқымалы терезенің оң жағындағы Кітапхана қосу түймешігін басыңыз. Сіз «Кітапхана қосу» қалқымалы терезесін көресіз (алты сурет).
  3. Кітапханаға өтіп, оны таңдаңыз. Содан кейін Кітапхана қосу түймешігін басыңыз. Сіз қайтадан Project Properties қалқымалы терезесін көресіз. Кітапхана енді қалқымалы терезеде Compile-time кітапханаларының тізімінде пайда болады.
  4. Жоба сипаттары қалқымалы терезесінде OK түймесін басыңыз. Сіз негізгі терезеге ораласыз.

Сіз кітапханаға жобаңызды қостыңыз, сонда сіздің бағдарламаңыз оны пайдалана алады. Сіз бағдарламаға қажет кез келген кітапханалар үшін бірдей әрекеттер тізбегін жасай аласыз.

Сізге үш рет кітапхана қажет - компиляция, құрастыру және орындау. Бақытымызға орай, NetBeans көмегімен жоғарыда көрсетілгендей кітапхананы қосу бәрін реттейді. Мұны растау үшін мен Pi4J -де I2C мүмкіндігін пайдалану үшін абсолютті минимумды жасайтын басқа негізгі сынып құрдым (жетінші сурет). Көрсететін қателердің жоқтығы TestPi4J сыныбының құрастырылғанын білдіреді. Іске қосу түймесін басу сәтті құрастырады және жүктейді; NetBeans jar файлынан басқа кітапхананы жүктейді, сондықтан бағдарлама орындалады. Соңғысын тексеру үшін сіз 9 -қадамдағы техниканы қолдана аласыз және ssh клиентіне келесі пәрменді енгізіңіз (dist каталогынан):

java -cp MyRemoteProg.jar myremoteprog. TestPi4J

NetBeans кітапханалармен қалай жұмыс жасайтынын түсінуге болады. Жобаның dist каталогында болған кезде, каталогтың мазмұнын тізімдеңіз (ls пәрменін қолданыңыз) және сіз lib ішкі каталогын көресіз. Сол каталогтың мазмұнын тізімдеңіз, сіз менің мысалда pi4j-core.jar болып табылатын ғаламдық кітапханада анықталған jar файлын көресіз. Сіз жобаға қосқан барлық кітапханалар lib каталогында пайда болады, осылайша жоба jar файлындағы барлық бағдарламаларға қол жетімді болады.

11 -қадам: Көңілді болыңыз

Мен Raspberry Pi үшін Java -ны өте тиімді дамытуға қол жеткізу әдісін сипаттадым. Raspberry Pi - бұл кең ауқымды жобалар үшін өте танымал технология. Java - бұл кәсіби деңгейдегі бағдарламалау тілі, ол Python -ға қарағанда өнімділік артықшылықтарын ұсынады және C/C ++ - ке қарағанда қауіпсіздік артықшылықтарын ұсынады. NetBeans - бұл бағдарламалаушының өнімділігін едәуір арттыратын кәсіби деңгейдегі IDE.

Менің ойымша, комбинация өте тартымды. Енді сіздің жобаларыңыз үшін комбинацияны қолданып көңілді болыңыз.

Ұсынылған: