Toon posts:

[ant] genjar houdt er plots mee op

Pagina: 1
Acties:

Verwijderd

Topicstarter
ik gebruik Ant (1.6.2, maar met 1.6.4 hetzelfde probleem) om enkele jars te genereren. Dit ging al lange tijd goed. Nu heb ik onlangs java code zitten bewerken, waarna ant plotseling niet meer jars wil maken voor me. Compileren gaat goed, class files komen in de juiste directory te staan maar ant geeft een "cannot resolve" foutmelding voor de class file die ik opgeef in de genjar task.

Nu is de code echt het enige wat veranderd is, build.xml is ongewijzigd, gebruik nog steeds dezelfde compiler. Ik heb het ook geprobeerd op een systeem waarop ik hetzelfde build-systeem gebruikte, door alleen mijn nieuwe code te kopieren.... Ook daar krijg ik cannot resolve, voor alle genjar-taken die ik gedefinieerd heb. Leegmaken van de build directory helpt ook niet, de classes komen gewoon op de goede plek te staan, maar ant vindt ze nog steeds niet.

Op internet vond ik alleen compiler problemen met dingen die niet konden resolven, mensen schijnen dat probleem niet te hebben met ant.

Iemand een idee hoe mijn wangedrag als java-programmeur er voor heeft kunnen zorgen dat ant opeens de class-files niet meer kan vinden?

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Post je target en properties eens.

[ Voor 26% gewijzigd door Alarmnummer op 20-05-2005 11:26 ]


Verwijderd

Topicstarter
mijn targets zijn vrijwel directe kopieen uit de ant-documentatie, en zoals gezegd werkte ant prima (de build.xml file is ongewijzigd sinds december 2004 en mijn problemen heb ik pas sinds vandaag). Echt het enige wat ik heb gedaan is kleine veranderingen in mijn broncode, een paar nieuwe classes, 1 nieuwe package... deze worden allemaal netjes meegecompileerd, komen op de goede plek te staan...

Ik meen te weten dat gecompileerde classes ergens een identifier hebben. Misschien raakt door mijn code die spontaan corrupt? Of misschien is de foutmelding van ant niet descriptief, en is het probleem dat ie de dependencies niet meer kan resolven in plaats van alleen de class waarnaar ik verwijs (dan zou het inderdaad met die nieuwe classes te maken kunnen hebben). Ik ga in ieder geval even proberen of ik terug kan gaan naar een oude versie van de code waarbij het nog wel werkte.

edit:
Ik word niet goed van ant op het moment (rijm-modus). Ik heb mijn nieuwe classes/package weggehaald en nu werken 6 van de 7 genjars weer goed. De enige die niet werkt is een stuk code waar al maanden niets aan is gebeurd.


edit:
Ben er dankzij de -verbose optie achtergekomen dat het dus gaat om de dependency resolver. Die zeurt nu over een filenotfoundexception voor Perl5Matcher.class uit de jakarte ORO library... een library die ik niet (bewust) gebruik.

[ Voor 22% gewijzigd door Verwijderd op 20-05-2005 12:46 ]


Verwijderd

Topicstarter
om het verhaal compleet te maken:

het bleek dat log4j een dependency heeft op jakarta ORO. Echter, voorheen gebruikte ik geen enkele feature van log4j waarvoor jakarta ORO echt nodig was, dus klaagde ant niet. Nu doe ik dat wel dus moest ORO ook m'n jars in. Hoop dat dit verhaal ooit iemand een hoop gedebug scheelt.