|
| Har nogle erfaring med ANT (og JavaDoc)? Fra : Morten Rasmussen |
Dato : 01-04-03 15:31 |
|
Jeg mangler nogle gode eksempler! ... kender I nogle steder? (.. og ja jeg
har været på http://ant.apache.org/)
Det lader til at være et utrolig stærkt værktøj med et væld af muligheder!
Konkret problem:
Jeg har et større projekt som jeg nu får kompileret via ANT - virker fint.
Nu er jeg ved at lave script til JavaDoc ... og det virker også - der kommer
bare en del warnings ala:
- Class .. not found in import, og
- Package .. not found in import
Fx.
[javadoc]
E:\arb\proj\j4\xxx\dk\yyy\skat\aar2002\beregning\output\SatserContainer.java
:13: Package dk.yyy.math not found in import.
[javadoc] import dk.yyy.math.*;
[javadoc] ^
JA - jeg KENDER GODT FEJLEN, men:
.... det passer ikke! Min projekt kompilere fint, alle pakker findes og
dannes og det virker (og jeg har husket at slette gamle class filer!). Men
hvorfor kommer ovenstående warnings? Er det fordi kun udvalgte klasser er
med i JavaDoc scriptet (- man ønsker jo kun Doc af projektets yderste
grænseflade)? (I ovenstående eksempel er SatserContainer.java med i JavaDoc
scriptet men dk.yyy.math.* er ikke .. og ønskes heller ikke med!)
Nogle forslag eller skal man bare leve med disse warnings?
På forhånd tak.
Mvh. Morten
| |
Michael Banzon (01-04-2003)
| Kommentar Fra : Michael Banzon |
Dato : 01-04-03 16:16 |
|
"Morten Rasmussen" <mrasmuss@ofir.dk> skrev i en meddelelse
news:3e89a2b0$0$174$edfadb0f@dread15.news.tele.dk.
> JA - jeg KENDER GODT FEJLEN, men:
Hmm...
Har du prøvet at køre javadoc manuelt??
/ Michael
| |
Morten Rasmussen (03-04-2003)
| Kommentar Fra : Morten Rasmussen |
Dato : 03-04-03 07:53 |
|
> Hmm...
>
> Har du prøvet at køre javadoc manuelt??
>
> / Michael
!?
Nej det har jeg vel ikke ... eller hvad mener du? Jeg har lavet en tekstfil
med ANT scriptet og så bruger jeg kommandopromten ala.:
ant -buildfile nyskatbrgbuild2.xml javadoc
Mit JavaDoc tag ser således ud:
<javadoc
sourcefiles="${src.root}\dk\magnus\skat\aar2002\beregning\input\Befordringsf
radrag.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Bil.java,${sr
c.root}\dk\magnus\skat\aar2002\beregning\input\Ejendom.java,${src.root}\dk\m
agnus\skat\aar2002\beregning\input\EjendomFaelles.java,${src.root}\dk\magnus
\skat\aar2002\beregning\input\Indkomst.java,${src.root}\dk\magnus\skat\aar20
02\beregning\input\InputBase.java,${src.root}\dk\magnus\skat\aar2002\beregni
ng\input\Person.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Skat
Input.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Telefon.java,$
{src.root}\dk\magnus\skat\aar2002\beregning\input\VirkOverskudsdisponering.j
ava,${src.root}\dk\magnus\skat\aar2002\beregning\output\SatserContainer.java
,${src.root}\dk\magnus\skat\aar2002\beregning\output\SkatOutput.java,${src.r
oot}\dk\magnus\skat\aar2002\beregning\output\OutputSkatFordeltPaaArter1.java
,${src.root}\dk\magnus\skat\aar2002\beregning\servicemodel\ServiceModel.java
,${src.root}\dk\magnus\skat\aar2002\beregning\skattemodel\ekstern\danskebank
\SkatteModelDanskeBank.java,${src.root}\dk\magnus\skat\aar2002\beregning\ska
ttemodel\generel\SkatteModel.java" sourcepath="${src.dir}'"
destdir="${docs.dir}"/>
/Morten
| |
Morten Rasmussen (03-04-2003)
| Kommentar Fra : Morten Rasmussen |
Dato : 03-04-03 11:40 |
|
> Mit JavaDoc tag ser således ud:
> <javadoc
>
sourcefiles="${src.root}\dk\magnus\skat\aar2002\beregning\input\Befordringsf
>
radrag.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Bil.java,${sr
>
c.root}\dk\magnus\skat\aar2002\beregning\input\Ejendom.java,${src.root}\dk\m
>
agnus\skat\aar2002\beregning\input\EjendomFaelles.java,${src.root}\dk\magnus
>
\skat\aar2002\beregning\input\Indkomst.java,${src.root}\dk\magnus\skat\aar20
>
02\beregning\input\InputBase.java,${src.root}\dk\magnus\skat\aar2002\beregni
>
ng\input\Person.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Skat
>
Input.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Telefon.java,$
>
{src.root}\dk\magnus\skat\aar2002\beregning\input\VirkOverskudsdisponering.j
>
ava,${src.root}\dk\magnus\skat\aar2002\beregning\output\SatserContainer.java
>
,${src.root}\dk\magnus\skat\aar2002\beregning\output\SkatOutput.java,${src.r
>
oot}\dk\magnus\skat\aar2002\beregning\output\OutputSkatFordeltPaaArter1.java
>
,${src.root}\dk\magnus\skat\aar2002\beregning\servicemodel\ServiceModel.java
>
,${src.root}\dk\magnus\skat\aar2002\beregning\skattemodel\ekstern\danskebank
>
\SkatteModelDanskeBank.java,${src.root}\dk\magnus\skat\aar2002\beregning\ska
> ttemodel\generel\SkatteModel.java" sourcepath="${src.dir}'"
> destdir="${docs.dir}"/>
>
> /Morten
sourcepath="${src.dir} er fjernet!
| |
Karl Peder Olesen (01-04-2003)
| Kommentar Fra : Karl Peder Olesen |
Dato : 01-04-03 16:47 |
|
On Tue, 1 Apr 2003 16:31:17 +0200, "Morten Rasmussen"
<mrasmuss@ofir.dk> wrote:
<snip>
>Konkret problem:
>Jeg har et større projekt som jeg nu får kompileret via ANT - virker fint.
>Nu er jeg ved at lave script til JavaDoc ... og det virker også - der kommer
>bare en del warnings ala:
>- Class .. not found in import, og
>- Package .. not found in import
>
Hej Morten
I ant's dokumentation står der at man kan angive en classpath
attribut. Mon ikke du skal have dine externe libraries ala
dk.yyy.math.* med i classpath?
Dette er bare et gæt, da jeg ikke har prøvet at bruge javadoc via ant.
mvh
Karl Peder
| |
Morten (01-04-2003)
| Kommentar Fra : Morten |
Dato : 01-04-03 20:38 |
|
Hvordan ser dit Ant target ud?
Du kan ikke regne med at den fejl du får betyder det samme som når du
compiler - det er ikke helt det samme der sker.
<target name="javadoc">
<mkdir dir="${out}/jdoc"/>
<javadoc packagenames="sample.mods.*" destDir="${out}/jdoc"
additionalparam="-version">
<sourcepath>
<pathelement location="src/core/ejb"/>
<pathelement location="src/core/web"/>
</sourcepath>
<classpath>
<pathelement location="lib/j2ee.jar"/>
</classpath>
</javadoc>
</target>
Har du en sourcepath opsætning?
Morten
| |
Morten Rasmussen (03-04-2003)
| Kommentar Fra : Morten Rasmussen |
Dato : 03-04-03 07:48 |
|
Måske ikke så pænt men:
<javadoc
sourcefiles="${src.root}\dk\magnus\skat\aar2002\beregning\input\Befordringsf
radrag.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Bil.java,${sr
c.root}\dk\magnus\skat\aar2002\beregning\input\Ejendom.java,${src.root}\dk\m
agnus\skat\aar2002\beregning\input\EjendomFaelles.java,${src.root}\dk\magnus
\skat\aar2002\beregning\input\Indkomst.java,${src.root}\dk\magnus\skat\aar20
02\beregning\input\InputBase.java,${src.root}\dk\magnus\skat\aar2002\beregni
ng\input\Person.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Skat
Input.java,${src.root}\dk\magnus\skat\aar2002\beregning\input\Telefon.java,$
{src.root}\dk\magnus\skat\aar2002\beregning\input\VirkOverskudsdisponering.j
ava,${src.root}\dk\magnus\skat\aar2002\beregning\output\SatserContainer.java
,${src.root}\dk\magnus\skat\aar2002\beregning\output\SkatOutput.java,${src.r
oot}\dk\magnus\skat\aar2002\beregning\output\OutputSkatFordeltPaaArter1.java
,${src.root}\dk\magnus\skat\aar2002\beregning\servicemodel\ServiceModel.java
,${src.root}\dk\magnus\skat\aar2002\beregning\skattemodel\ekstern\danskebank
\SkatteModelDanskeBank.java,${src.root}\dk\magnus\skat\aar2002\beregning\ska
ttemodel\generel\SkatteModel.java" sourcepath="${src.dir}'"
destdir="${docs.dir}"/>
I Sourcefiles angiver jeg præcis dem jeg vil lave JavaDoc på og i min
(sourcepath) src.dir har jeg "location" til alt min source
!!?
Mvh. Morten
"Morten" <usenet@kikobu.com> wrote in message
news:3e89eaaf$0$42654$edfadb0f@dread11.news.tele.dk...
>
> Hvordan ser dit Ant target ud?
>
> Du kan ikke regne med at den fejl du får betyder det samme som når du
> compiler - det er ikke helt det samme der sker.
>
> <target name="javadoc">
> <mkdir dir="${out}/jdoc"/>
>
> <javadoc packagenames="sample.mods.*" destDir="${out}/jdoc"
> additionalparam="-version">
> <sourcepath>
> <pathelement location="src/core/ejb"/>
> <pathelement location="src/core/web"/>
> </sourcepath>
> <classpath>
> <pathelement location="lib/j2ee.jar"/>
> </classpath>
> </javadoc>
> </target>
>
> Har du en sourcepath opsætning?
>
> Morten
>
| |
Morten (03-04-2003)
| Kommentar Fra : Morten |
Dato : 03-04-03 08:58 |
|
Hvorfor angiver du sourcefiles? Du kan blot sætte din sourcepath til
${src.root}. Hvad er forskellen på ${src.root} or ${src.dir}?
Jeg har fex. flg. struktur:
[localhost]~/tmp>tree
..
|-- build.xml
`-- src
`-- sample
`-- HelloJavaDoc.java
2 directories, 2 files
Her er HelloJavaDoc.java filen er i sample package, dvs. jeg som source
path skal angive "src" og ikke "src/sample", ganske som når man erklærer
en classpath.
[localhost]~/tmp>cat build.xml
<project name="sample-jdoc" default="jdoc">
<property name="src.dir" value="src"/>
<property name="doc.dir" value="doc"/>
<property name="build.dir" value="build"/>
<target name="compile" depends="clean">
<mkdir dir="${build.dir}/classes"/>
<javac srcdir="${src.dir}" destdir="${build.dir}/classes"/>
</target>
<target name="jdoc" depends="clean">
<mkdir dir="${doc.dir}"/>
<javadoc packagenames="sample.*" destDir="${doc.dir}">
<sourcepath>
<pathelement location="src"/>
</sourcepath>
</javadoc>
</target>
<target name="clean">
<delete dir="${build.dir}"/>
<delete dir="${doc.dir}"/>
</target>
</project>
[localhost]~/tmp>
Jeg kan ikke forstå hvorfor du både arbejder med sourcepath og
sourcefiles.
Mvh Morten
PS: Ved godt at jeg ikke reply'er på den rigtige post, men jeg læser
news gennem sunsite.dk og poster gennem groups.google.com, nogen der
kender en gratis opdateret newsserver man kan poste til?
| |
Morten Rasmussen (03-04-2003)
| Kommentar Fra : Morten Rasmussen |
Dato : 03-04-03 11:39 |
|
Det er muligt jeg har misforstået noget! Jeg troede ...
sourcefiles - var en udvælgelse at nettop de filer man ønskede at lave
JavaDoc på, mens
sourcepath - var det hele (så det kan kompilere)
Men du har vist ret |-; det var en feler - det virker også når jeg fjerner
sourchfiles.
Nå men nu sidde er og bakser med "packages - listen" ... det er tom når jeg
bruger Ant med udfyldt når jeg bruger JBuilder!
Nå men tak jeg kæmper videre.
Mvh. Morten
"Morten" <usenet@kikobu.com> wrote in message
news:75db36f2.0304022358.60974986@posting.google.com...
> Hvorfor angiver du sourcefiles? Du kan blot sætte din sourcepath til
> ${src.root}. Hvad er forskellen på ${src.root} or ${src.dir}?
>
> Jeg har fex. flg. struktur:
>
> [localhost]~/tmp>tree
> .
> |-- build.xml
> `-- src
> `-- sample
> `-- HelloJavaDoc.java
>
> 2 directories, 2 files
>
> Her er HelloJavaDoc.java filen er i sample package, dvs. jeg som source
> path skal angive "src" og ikke "src/sample", ganske som når man erklærer
> en classpath.
>
> [localhost]~/tmp>cat build.xml
>
> <project name="sample-jdoc" default="jdoc">
>
> <property name="src.dir" value="src"/>
> <property name="doc.dir" value="doc"/>
> <property name="build.dir" value="build"/>
>
> <target name="compile" depends="clean">
> <mkdir dir="${build.dir}/classes"/>
> <javac srcdir="${src.dir}" destdir="${build.dir}/classes"/>
> </target>
>
> <target name="jdoc" depends="clean">
> <mkdir dir="${doc.dir}"/>
> <javadoc packagenames="sample.*" destDir="${doc.dir}">
> <sourcepath>
> <pathelement location="src"/>
> </sourcepath>
> </javadoc>
> </target>
>
> <target name="clean">
> <delete dir="${build.dir}"/>
> <delete dir="${doc.dir}"/>
> </target>
>
>
> </project>
>
> [localhost]~/tmp>
>
> Jeg kan ikke forstå hvorfor du både arbejder med sourcepath og
> sourcefiles.
>
> Mvh Morten
>
> PS: Ved godt at jeg ikke reply'er på den rigtige post, men jeg læser
> news gennem sunsite.dk og poster gennem groups.google.com, nogen der
> kender en gratis opdateret newsserver man kan poste til?
| |
Søren Berg Glasius (03-04-2003)
| Kommentar Fra : Søren Berg Glasius |
Dato : 03-04-03 12:40 |
|
Hej Morten
Jeg har en pakkeudvælgelse her:
<!-- jar filer som projektet benytter -->
<fileset dir="${lib.dir}" id="_jar.files">
<include name="*.jar"/>
<include name="*.zip"/>
</fileset>
<!-- reference til klasser og jar-filer -->
<path id="_class.path">
<pathelement location="${classes.dir}"/>
<fileset refid="_jar.files"/>
</path>
<!-- Excludes subpackages in br/ -->
<patternset id="_non.br">
<include name="**"/>
<exclude name="br/?**/**"/>
</patternset>
<!-- But include packages in root of br/ -->
<patternset id="_br">
<include name="br"/>
<include name="br/report"/>
</patternset>
<!-- Generate javadocs -->
<javadoc author="true" classpathref="_class.path"
destdir="${build.javadoc.dir}" failonerror="true" nohelp="true"
verbose="false" version="true" windowtitle="${projectname} API">
<packageset defaultexcludes="yes" dir="${src.dir}">
<patternset refid="_non.br"/>
</packageset>
<packageset defaultexcludes="yes" dir="${src.dir}">
<patternset refid="_br"/>
</packageset>
<doctitle>API Documenation</doctitle>
<link href="${javadoc.sdkapi}"/>
<group>
<package name="br*"/>
<title><![CDATA[Business Rules]]></title>
</group>
<group>
<package name="moduler*"/>
<title><![CDATA[Moduler]]></title>
</group>
<group>
<package name="serverside*"/>
<title><![CDATA[Serverside]]></title>
</group>
<group>
<package name=""*""/>
<title><![CDATA[Framework]]></title>
</group>
</javadoc>
</target>
Håber du kan få noget fornuftigt ud af det - det virker helt fint for mig
MVH
Søren
| |
|
|