Mitenkähän tuo Netbeans projektinhallinta oikein toimii ?
Jos haluan rakentaa yleiskäyttöisen luokkakirjaston, jota voi käyttää useissa projekteissa, minne ja miten sellainen pitäisi luoda ?
Erehdyin kokeilemaan sellaista, että loin oman hakemiston tuollaisille kaikkien projektien ulkopuolelle, jotta ne eivät olisi sidottuja johonkin määrättyyn projektiin, ja linuxin tiedostolinkkien avulla (ln -s mikälinkataan minnelinkataan) laitoin ne näkymään niihin projekteihin, joissa noita oli tarkoitus käyttää.
Mutta sitten selvisi ikävä tosiasia: Noin EI pidä tehdä! NetBeans yrittää kääntää jokaisen .java -päätteisen tiedoston projektin src -hakemistosta JA sen kaikista alihakemistoista vaikkei projektissa mikään tiedosto viittaisi näihin kirjastoihin import -lauseella !
Minne siis pitää laittaa sellaiset luokkatiedostot (xxxxx.java) jiden halutaan olevan käytettävissä import -lauseella, mutta joiden EI haluta tulevan automaattisesti mukaan käännökseen jos niihin EI viitata import -lauseella ?
Vertai1un vuoksi: esim.Delphissähän .dpr -projektitiedosto määrittelee käytettävät UNITit ja niiden sijainnit. Yksittäiset UNITit voivat toki uses -lauseella käyttää muita UNITeja, mutta joko 1) niidenkin on oltava .dpr -tiedostossa listattuna 2) niiden on oltava Delphin omia mukanatulevia UNITeja tai 3) niiden on löydyttävä paikoista,jotka määritellään Project options -kohdassa "Unit search directories". Jos jokin mukana oleva unit viittaa sellaiseen toiseen UNITiin, jota ei löydy millään em. 3 tavasta, Delphi antaa tästä ilmoituksen "Unit xxxx not found", eikä käännös onnistu, kunnes käyttäjä on korjannut puutteellisen viittauksen.
NetBeans sensijaan ottaa tosiaan mukaan käännökseen automattisesti projektin src -hakemiston kaikkine alihakemistoineen, sikäli kun niistä löytyy .java -päätteisiä tiedostoja, niin silti, vaikkei niihin viittaa yksikään import -lause.
Netbeans projektinhallinta
Mika0800
2
329
Vastaukset
- Nimimerkki
Eikö niistä yleiskäyttöistä luokista kannattais tehdä jar-pakkauksia joita sitten liität projektiin mukaan...? Pakkauksia saa mukaan project libraries-kohdasta.
Tuo lisännee käännösvaiheessa classpathiin tuon valitun pakkauksen. - fidel1
En tiedä netbeansista, mutta eclipsessä ainakin saa filtteröityä source-hakemistojen alihakemistoja tarpeen vaatiessa pois.
Mutta kuten toisessa vastauksessa todetaan, järkevintä on liittää luokkakirjastot projektiin mukaan erillisinä jarreina.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
- 1566339
- 501786
Klaukkalan onnettomuus 4.4
Klaukkalassa oli tänään se kolmen nuoren naisen onnettomuus, onko kellään mitään tietoa mitä kävi tai ketä onnettomuudes381434- 471051
Ukraina ja Zelenskyn ylläpitämä sota tuhoaa Euroopan, ei Venäjä
Mutta tätä ei YLE eikä Helsingin Sanomat kerto.3241019Kolari Klaukkala
Kaksi teinityttö kuoli. Vastaantulijoille ei käynyt mitenkään. Mikä auto ja malli telineillä oli entä se toinen auto? Se48941Ooo! Kaija Koo saa kesämökille öky-rempan:jättimäinen terde, poreallas... Katso ennen-jälkeen kuvat!
Wow, nyt on Kaija Koon mökkipihalla kyllä iso muutos! Miltä näyttää, haluaisitko omalle mökillesi vaikkapa samanlaisen l13919Kevyt on olo
Tiedättekö, että olo kevenee kummasti, kun päästää turhista asioista tai ihmisistä irti! Tämä on hyvä näin <384898Olisinpa jo siellä, otatkohan minut vastaan
Olisitpa lähelläni ja antaisit minun maalata sinulle kuvaa siitä kaikesta ikävästä, tuskasta, epävarmuudesta ja mieleni75875Toivoisin, että lähentyisit kanssani
Tänään koin, että välillämme oli enemmän. Kummatkin katsoivat pidempään kuin tavallisesti toista silmiin. En tiedä mistä14867