Javadoc generation
Is there any tool that will generate javadocs for java classes? I would like it to generate everything it can read from procedure headers. The rest I can fill in myself.
Most IDE's do this for you as you write your java classes. Have a look at JBuilder.
Similar Messages
-
Hi all,
I am generating javadocs for a source file (a ClassA that extends ClassB and implements ClassC ). ClassB and ClassC are from J2SE.
The problem I am having is that in the generated html file , at the definifition there are no links to the J2SE API docs for ClassB and ClassC. It looks just like this:
public class ClassA
extends java.lang.ClassB -----no link here
implements java.lang.ClassC -------no link here
This also happens in the "All Implemented Interfaces" section (the implemented link appears but there is no link to the java API).
Should I configure the JDeveloper 10.1.3 javadoc generator somehow?
Could you please help me on this?
Thanks,
LuizaTo get hyperlinks to external APIs, you normally have to use the -link or -linkoffline flags to javadoc. See the documentation here:
http://java.sun.com/j2se/1.5.0/docs/tooldocs/solaris/javadoc.html#link
In JDeveloper, you would specify this flag in the "Additional Parameters" field on the Javadoc page in Project Properties, e.g.
-link http://java.sun.com/j2se/1.5.0/docs/api
Thanks,
Brian -
Automatic JavaDoc generation Tool???
Dear friends,
I've used Forte, Xemacs etc. IDEs which include tools to automatically document the Java file.
Is there any tool available which can be used with command line arguments?? if possible please give the details abt it.
thanking you in advance,
ketan@see http://jrefactory.sourceforge.net/cspretty.html
-
JCOP tools ANT script generation
Hello,
does JCOP tools plug-in within Eclipse IDE provide facilities for automatic Ant .xml script generation for building the project (i.e. compilation and convertion) like it provides for javadoc generation?
I can write compilation .xml script for Ant on my own. But what about the convertion to CAP files?
Best regards,
EveI do not know of any possibility/task/facility that generates you an ant script. Ant itself is a way to automatize tasks. So I am afraid you need to dive into ant. It's worth it.
-
Hi All,
I am trying to generate javadoc for a existing code base (pretty huge one) and when there are some issues like using @@@ instead of @ or using @see to some thing that is not there the whole javadoc generation halts..
is there any way to skip that file and continue with next or
generate javadoc with a different version or java version??
error message
~~~~~~~~~~~~~~~~~~~
warning - @param argument "<b>timeOut</b>" is not a parameter name.
java.util.MissingResourceException: Can't find resource for bundle com.sun.tools.doclets.formats.html.resources.standard, key
doclet.malformed_html_link_tag
at java.util.ResourceBundle.getObject(ResourceBundle.java:325)
at java.util.ResourceBundle.getString(ResourceBundle.java:285)
at com.sun.tools.doclets.internal.toolkit.util.MessageRetriever.getText(MessageRetriever.java:114)
at com.sun.tools.doclets.internal.toolkit.util.MessageRetriever.getText(MessageRetriever.java:92)
at com.sun.tools.doclets.internal.toolkit.util.MessageRetriever.getText(MessageRetriever.java:81)
at com.sun.tools.doclets.internal.toolkit.util.MessageRetriever.warning(MessageRetriever.java:290)
at com.sun.tools.doclets.formats.html.HtmlDocletWriter.redirectRelativeLinks(HtmlDocletWriter.java:1526)
at com.sun.tools.doclets.formats.html.HtmlDocletWriter.commentTagsToString(HtmlDocletWriter.java:1438)
at com.sun.tools.doclets.formats.html.HtmlDocletWriter.printCommentTags(HtmlDocletWriter.java:1397)
at com.sun.tools.doclets.formats.html.HtmlDocletWriter.printSummaryComment(HtmlDocletWriter.java:1370)
at com.sun.tools.doclets.formats.html.SubWriterHolderWriter.printIndexComment(SubWriterHo
Command line was:/pkgs/linux/intel/sunjava2/1.5.0_06/jre/../bin/javadoc -J-DproxyHost=10.21.79.250 -J-DproxyPort=8080 @options @packagesThis is a known bug, see http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=5082928
If possible, use JDK 1.6 to generate your API documentation. (The above report says that this bug has been fixed in the 1.6 release.) -
[help needed] Javadoc problem with many files
Hi,
I have an Ant script generating my javadoc every night. I have about 5700 java files making about 42MB of data.
It worked fine for two years until two weeks ago, where the script stopped with the following message :
<<
[... big snip...]
[javadoc] C:\Temp\Java\blablabla.java:58: cannot resolve symbol
[...snip...]
[javadoc] public HtmlComponent getCell(
[javadoc] ^
[javadoc] 100 errors
[javadoc] 1 warning
BUILD SUCCESSFUL
Total time: 1 minute 40 seconds
>>
If I execute the javadoc generation on a smaller set of java source files, I still have a lot (100 displayed) of error messages like the one above (which generaly don't stop javadoc), but the generation continues :
<<
[...big snip...]
[javadoc] C:\Temp\Java\xxx.java:12: cannot resolve symbol
[...snip...]
[javadoc] public SelectionNoop(Fig fig) {
[javadoc] ^
[javadoc] Standard Doclet version 1.4.2_08
[javadoc] Generating C:\temp\JavadocNewSI\constant-values.html...
[javadoc] Building tree for all the packages and classes...
[javadoc] Generating C:\temp\JavadocNewSI\com\zz\common\job\common\class-use\ManagerDelegate.html...
[...big snip...]
[javadoc] Generating C:\temp\JavadocNewSI\stylesheet.css...
[javadoc] 6251 warnings
BUILD SUCCESSFUL
Total time: 23 minutes 33 seconds
>>
I don't understand what's going on. It is not a memory problem since it issues an intelligible message.
I also managed to generate javadoc for several subsets, so it can't be a problem with one file or folder crashing javadoc.
Any help welcome,
TugWell, it seems that the cause was indeed an empty java file...
The generation fails if the empty java file is the set AND a refering file is in the set. If only one of these conditions are missing, then javadoc goes on...
What I don't understand is that the empty file used to be here since may 2005 and the referring class is unchanged since 2004... it never bugged javadoc before.
Creepy...
Tug -
hi,
maven has an ability to generate a project website, but i'm finding it hard to use. I was wondering if anyone knows of any other tools that do this alone (maven seems to do an awful lot more which i don't want to use..)
thanks,
asjfwhat do you mean with "project website"?you give it the metadata about your project (where you keep tests, what source code metrics you're interested in) and options (whether you x-ref generation, javadoc generation etc..) and it generates a project website.
To see an automatically generated website you can look at:
http://maven.apache.org/
I think everything under "Project Documentation" is automatically generated
am thinking that biting the bullet and sitting down for a few hours with maven is probably the way to go, but I don't want to have the project dependent on it - just use its website generation features
To create a simple Internet website you could use
Macromedia Dreamweaver or Microsoft Frontpage...he he -
The dreaded "could not find the Main Class, Program will exit", how?
Hello all,
I am trying to run my .jar file and I get this error message.
I want to mention I googled and searched for it, without success: There is so many different explanations!
I tried this:
Adding some lines in a manifest.fm file...
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 10.0-b19 (Sun Microsystems Inc.)
X-COMMENT: Main-Class will be added automatically by build
I have Netbeans 5.5.
Also I noticed my "build.xml" file is empty" and my "manifest.fm" nearly empty. I have also added "project, main class" in the options...
Here is my "build":
{code}<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<project name="BetaCourseworkJava3d_Final" default="default" basedir=".">
<description>Builds, tests, and runs the project BetaCourseworkJava3d_Final.</description>
<import file="nbproject/build-impl.xml"/>
<!--
There exist several targets which are by default empty and which can be
used for execution of your tasks. These targets are usually executed
before and after some main targets. They are:
-pre-init: called before initialization of project properties
-post-init: called after initialization of project properties
-pre-compile: called before javac compilation
-post-compile: called after javac compilation
-pre-compile-single: called before javac compilation of single file
-post-compile-single: called after javac compilation of single file
-pre-compile-test: called before javac compilation of JUnit tests
-post-compile-test: called after javac compilation of JUnit tests
-pre-compile-test-single: called before javac compilation of single JUnit test
-post-compile-test-single: called after javac compilation of single JUunit test
-pre-jar: called before JAR building
-post-jar: called after JAR building
-post-clean: called after cleaning build products
(Targets beginning with '-' are not intended to be called on their own.)
Example of inserting an obfuscator after compilation could look like this:
<target name="-post-compile">
<obfuscate>
<fileset dir="${build.classes.dir}"/>
</obfuscate>
</target>
For list of available properties check the imported
nbproject/build-impl.xml file.
Another way to customize the build is by overriding existing main targets.
The targets of interest are:
-init-macrodef-javac: defines macro for javac compilation
-init-macrodef-junit: defines macro for junit execution
-init-macrodef-debug: defines macro for class debugging
-init-macrodef-java: defines macro for class execution
-do-jar-with-manifest: JAR building (if you are using a manifest)
-do-jar-without-manifest: JAR building (if you are not using a manifest)
run: execution of project
-javadoc-build: Javadoc generation
test-report: JUnit report generation
An example of overriding the target for project execution could look like this:
<target name="run" depends="BetaCourseworkJava3d_TestsBACKUPSUNDAY05April-impl.jar">
<exec dir="bin" executable="launcher.exe">
<arg file="${dist.jar}"/>
</exec>
</target>
Notice that the overridden target depends on the jar target and not only on
the compile target as the regular run target does. Again, for a list of available
properties which you can use, check the target you are overriding in the
nbproject/build-impl.xml file.
-->
</project>
{code}
my Manifest:
{code}Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 10.0-b19 (Sun Microsystems Inc.)
X-COMMENT: Main-Class will be added automatically by build
{code}
And my whole code (although I have like 4 .JAVA files in my project):
{code}
package courseworkjava3d;
import java.awt.*;
import java.awt.event.*;
import com.sun.j3d.utils.geometry.*;
import com.sun.j3d.utils.universe.*;
import javax.swing.*;
import javax.media.j3d.*;
import javax.vecmath.*;
import javax.media.j3d.PositionPathInterpolator;
import javax.media.j3d.Alpha;
import javax.media.j3d.BoundingSphere;
import com.sun.j3d.utils.applet.MainFrame;
import java.applet.Applet;
import java.awt.event.WindowAdapter;
import javax.swing.Timer;
import com.sun.j3d.utils.image.*;
public class Simple3D extends JFrame implements ActionListener, KeyListener
private TransformGroup objTransxx;
private Button go = new Button("Press to start the Bouncing Ball. Press A and S to move the ball Left and Right once it started!");
private Transform3D transxx = new Transform3D();
private float height=0.0f;
private float sign = 1.0f; // aller vers le haut ou vers le bas
private Timer timer;
private float xloc=-2.25f;
public Simple3D()
setSize(800, 800);
GraphicsConfiguration graphicsConfig = SimpleUniverse.getPreferredConfiguration();
Canvas3D canvas = new Canvas3D(graphicsConfig);
getContentPane().add("Center", canvas);
BasicUniverse universe = new BasicUniverse(canvas, 8.0f);
// Rotate the view platform by PI/4 radians about X in the BasicUniverse
TransformGroup viewTransform = universe.getViewPlatformTransform();
Transform3D transform = new Transform3D();
transform.rotX(-Math.PI / 4.0);
Transform3D currentTransform = new Transform3D();
viewTransform.getTransform(currentTransform);
transform.mul(currentTransform);
viewTransform.setTransform(transform);
// Add something to display
BranchGroup scene = createCubeGraph();
universe.addBranchGraph(scene);
/* //ultra important! comment theses lines otherwise it bugs!
//Merde
setLayout(new BorderLayout());
GraphicsConfiguration config =
SimpleUniverse.getPreferredConfiguration();
Canvas3D c = new Canvas3D(config); */
add("Center", canvas);
//i messed up te code, i replaced canvas c by "canvas" as i already had one!
canvas.addKeyListener(this);
timer = new Timer(75,this);
//timer.start();
Panel p =new Panel();
p.add(go);
add("North",p);
go.addActionListener(this);
go.addKeyListener(this);
// Cr�er une sc�ne simple et l�ajouetr � l�univers
//BranchGroup scene2 = createCubeGraph();
//SimpleUniverse u = new SimpleUniverse(c);
//u.getViewingPlatform().setNominalViewingTransform();
//u.addBranchGraph(scene2);
//End Merde
public BranchGroup createCubeGraph() {
BranchGroup Humanoid = new BranchGroup();
//Debut Ball REBOUND
// Create the root of the branch graph
//BranchGroup objRoot = new BranchGroup();
objTransxx = new TransformGroup();
objTransxx.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
Humanoid.addChild(objTransxx);
// Cr�er une forme simple et l�ajouter au graph de sc�ne
Sphere spherex = new Sphere(0.85f);
objTransxx = new TransformGroup();
objTransxx.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
Transform3D pos1 = new Transform3D();
pos1.setTranslation(new Vector3f(-2.0f,0.0f,-2.0f));
objTransxx.setTransform(pos1);
objTransxx.addChild(spherex);
Humanoid.addChild(objTransxx);
BoundingSphere boundsx =
new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
// I messed up the colors: I have applied 2 times some colorslights to the same BranchGroup
Color3f light1Colorx = new Color3f(1.0f, 1.0f, 1.0f);
Vector3f light1Directionx = new Vector3f(4.0f, -7.0f, -12.0f);
DirectionalLight light1x
= new DirectionalLight(light1Colorx, light1Directionx);
light1x.setInfluencingBounds(boundsx);
Humanoid.addChild(light1x);
// R�gler la lumi�re ambiante
Color3f ambientColorx = new Color3f(1.0f, 1.0f, 1.0f);
AmbientLight ambientLightNodex = new AmbientLight(ambientColorx);
ambientLightNodex.setInfluencingBounds(boundsx);
Humanoid.addChild(ambientLightNodex);
// END BallRebound
// Apparence BODY
// Configurer les couleurs
Color3f blackbody = new Color3f(0.0f, 0.0f, 0.0f);
Color3f whitebody = new Color3f(1.0f, 1.0f, 1.0f);
Color3f redbody = new Color3f(0.8f, .85f, .85f);
// Configurer la texture
//if I want it in Black and white i need to replace RGB by LUMINANCE
TextureLoader loaderbody = new TextureLoader("C:\\java3d\\body.jpg", "RGB", new Container());
Texture texturebody = loaderbody.getTexture();
texturebody.setBoundaryModeS(Texture.WRAP);
texturebody.setBoundaryModeT(Texture.WRAP);
texturebody.setBoundaryColor( new Color4f( 1.0f, 1.0f, 0.0f, 0.0f ) );
// Configurer les attributs de la texture
// Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
TextureAttributes texAttrbody = new TextureAttributes();
texAttrbody.setTextureMode(TextureAttributes.MODULATE);
Appearance apbody = new Appearance();
apbody.setTexture(texturebody);
apbody.setTextureAttributes(texAttrbody);
//Configurer le mat�riau
apbody.setMaterial(new Material(redbody, blackbody, redbody, blackbody, 1.0f));
// Cr�er une sph�re pour y appliquer les textures
int primflagsbody = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
// End Apparence BODY
// Apparence BODYHEAD
// Configurer les couleurs
Color3f blackbodyH = new Color3f(0.0f, 0.0f, 0.0f);
Color3f whitebodyH = new Color3f(1.0f, 1.0f, 1.0f);
Color3f redbodyH = new Color3f(0.8f, .85f, .85f);
// Configurer la texture
//if I want it in Black and white i need to replace RGB by LUMINANCE
TextureLoader loaderbodyH = new TextureLoader("C:\\java3d\\head.jpg", "RGB", new Container());
Texture texturebodyH = loaderbodyH.getTexture();
texturebodyH.setBoundaryModeS(Texture.WRAP);
texturebodyH.setBoundaryModeT(Texture.WRAP);
texturebodyH.setBoundaryColor( new Color4f( 1.0f, 1.0f, 0.0f, 0.0f ) );
// Configurer les attributs de la texture
// Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
TextureAttributes texAttrbodyH = new TextureAttributes();
texAttrbodyH.setTextureMode(TextureAttributes.MODULATE);
Appearance apbodyH = new Appearance();
apbodyH.setTexture(texturebodyH);
apbodyH.setTextureAttributes(texAttrbodyH);
//Configurer le mat�riau
apbodyH.setMaterial(new Material(redbodyH, blackbodyH, redbodyH, blackbodyH, 1.0f));
// Cr�er une sph�re pour y appliquer les textures
int primflagsbodyH = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
// End Apparence BODY HEAD
//for the trunk c le corps
TransformGroup fortheTrunk = new TransformGroup();
//will allow to modify object wgile executing
fortheTrunk.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
//alpha rotation time related
Alpha rotationAlpha2=new Alpha(-1,9000);
//behviour for our rotation
RotationInterpolator rotator2= new RotationInterpolator(rotationAlpha2,fortheTrunk);
// area where rotation will be
BoundingSphere bounds2=new BoundingSphere();
rotator2.setSchedulingBounds(bounds2);
fortheTrunk.addChild(rotator2);
//end of rtotation
Alpha transAlphahuman=new Alpha(-1,600);
//transform 3d trans for the interpolatipon HUMANOID
Transform3D transhumanoid=new Transform3D();
//matrix for 2positions
Point3f[] cheminhuman=new Point3f[3];
cheminhuman[0]=new Point3f(0.8f,0.0f,0.0f);
cheminhuman[1]=new Point3f(-0.8f,0.0f,0.0f);
cheminhuman[2]=new Point3f(0.8f,0.0f,0.0f);
//matrix of floats to make the dots match with timeline
float[] timePositionhuman={0.0f,0.50f,1.0f};
PositionPathInterpolator interpolhuman=new PositionPathInterpolator(transAlphahuman,fortheTrunk,transhumanoid,timePositionhuman,cheminhuman);
BoundingSphere bounds4=new BoundingSphere();
interpolhuman.setSchedulingBounds(bounds4);
fortheTrunk.addChild(interpolhuman);
//add the trunk to the branchgroup
Humanoid.addChild(fortheTrunk);
TransformGroup zeTrunk = new TransformGroup();
zeTrunk.addChild(new com.sun.j3d.utils.geometry.Box(.55f,.80f,.50f,
primflagsbody,apbody));
//t3D for the head= bouge up
Transform3D T3DHead = new Transform3D();
T3DHead.set(new Vector3f(0f,1.1f,0f));
//create a tranform group for this t3Dhead
TransformGroup fortheHead = new TransformGroup();
fortheHead.setTransform(T3DHead);
//add the box head
//fortheHead.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.20f,.10f, primflagsbody,apbody));
fortheHead.addChild(new com.sun.j3d.utils.geometry.Sphere(0.35f,primflagsbodyH,apbodyH));
/* I dont need that anymore it was for putting a flat texture on a face. I chose a sphere instead!
//transform 3D for the face
Transform3D T3DFace = new Transform3D();
T3DFace.set(new Vector3f(0f,0f,.14f));
//create a TransformGroup for this Face
TransformGroup Face = new TransformGroup();
Face.setTransform(T3DFace);
//add the child box to the face;
Face.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.20f,.2f,
primflagsbodyH,apbodyH));
//add this face to the head as a child
fortheHead.addChild(Face);
//tranform3d left arm
Transform3D T3DArmL = new Transform3D();
T3DArmL.set(new Vector3f(-0.79f,0.73f,0f));
//create Tranform Group for the leftarm
TransformGroup fortheArmL = new TransformGroup();
fortheArmL.setTransform(T3DArmL);
//add the group for upperarm
TransformGroup ArmL = new TransformGroup();
ArmL.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.14f,.10f,
primflagsbody,apbody));
fortheArmL.addChild(ArmL);
//create a transform3D for the forearmleft
Transform3D T3DForearmL = new Transform3D();
T3DForearmL.set(new Vector3f(-.51f,0f,0f));
//create the tranformgroup for the forearmleft
TransformGroup ForearmL = new TransformGroup();
ForearmL.setTransform(T3DForearmL);
//add the child box to forearm
ForearmL.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.14f,.10f,
primflagsbody,apbody));
ArmL.addChild(ForearmL);
//create transform 3d for the lefthand
Transform3D T3DHandL = new Transform3D();
T3DHandL.set(new Vector3f(-.42f,0f,0f));
//create the child tranform group for the box of the hand
TransformGroup HandL= new TransformGroup();
HandL.setTransform(T3DHandL);
//add the child hand to the forearm
ForearmL.addChild(HandL);
//create the box for the handLeft
HandL.addChild(new com.sun.j3d.utils.geometry.Box(.10f,.140f,.10f,
primflagsbody,apbody));
//Right Arm
//tranform3d right arm
Transform3D T3DArmR = new Transform3D();
T3DArmR.set(new Vector3f(0.79f,0.73f,0f));
//create Tranform Group for the right arm
TransformGroup fortheArmR = new TransformGroup();
fortheArmR.setTransform(T3DArmR);
//add the group for upperarm right
TransformGroup ArmR = new TransformGroup();
ArmR.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.14f,.10f, primflagsbody,apbody));
//com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
fortheArmR.addChild(ArmR);
//create a transform3D for the forearmright
Transform3D T3DForearmR = new Transform3D();
T3DForearmR.set(new Vector3f(.51f,0f,0f));
//create the tranformgroup for the forearmright
TransformGroup ForearmR = new TransformGroup();
ForearmR.setTransform(T3DForearmR);
//add the child box to forearmright
ForearmR.addChild(new com.sun.j3d.utils.geometry.Box(.20f,.14f,.10f, primflagsbody,apbody));
ArmR.addChild(ForearmR);
//create transform 3d for the righthand
Transform3D T3DHandR = new Transform3D();
T3DHandR.set(new Vector3f(.42f,0f,0f));
//create the child tranform group for the box of the hand
TransformGroup HandR= new TransformGroup();
HandR.setTransform(T3DHandR);
//add the child hand to the forearmright
ForearmR.addChild(HandR);
//create the box for the handright
HandR.addChild(new com.sun.j3d.utils.geometry.Box(.10f,.14f,.10f, primflagsbody,apbody));
//Left Leg
//tranform3d left leg
Transform3D T3DLegL = new Transform3D();
T3DLegL.set(new Vector3f(0.43f,-1.23f,0f));
//create Tranform Group for the leftleg
TransformGroup fortheLegL = new TransformGroup();
fortheLegL.setTransform(T3DLegL);
//add the group for uppeleg
TransformGroup LegL = new TransformGroup();
LegL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.35f,.10f, primflagsbody,apbody));
fortheLegL.addChild(LegL);
//create a transform3D for the downlegleft
Transform3D T3DDownLegL = new Transform3D();
T3DDownLegL.set(new Vector3f(0f,-.70f,0f));
//create the tranformgroup for the downegleft
TransformGroup DownLegL = new TransformGroup();
DownLegL.setTransform(T3DDownLegL);
//add the child box to downlegm
DownLegL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.25f,.10f, primflagsbody,apbody));
LegL.addChild(DownLegL);
//create transform 3d for the leftfeet
Transform3D T3DFeetL = new Transform3D();
T3DFeetL.set(new Vector3f(.0f,-.45f,0f));
//create the child tranform group for the box of thefeet
TransformGroup FeetL= new TransformGroup();
FeetL.setTransform(T3DFeetL);
//add the child hand to the downleg
DownLegL.addChild(FeetL);
//create the box for the feetLeft
FeetL.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.10f,.15f, primflagsbody,apbody));
//Right Leg
//tranform3dright leg
Transform3D T3DLegR = new Transform3D();
T3DLegR.set(new Vector3f(-0.43f,-1.23f,0f));
//create Tranform Group for the righttleg
TransformGroup fortheLegR = new TransformGroup();
fortheLegR.setTransform(T3DLegR);
//add the group for uppelegR
TransformGroup LegR = new TransformGroup();
LegR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.35f,.10f, primflagsbody,apbody));
fortheLegR.addChild(LegR);
//create a transform3D for the downlegright
Transform3D T3DDownLegR = new Transform3D();
T3DDownLegR.set(new Vector3f(0f,-.70f,0f));
//create the tranformgroup for the downegright
TransformGroup DownLegR = new TransformGroup();
DownLegR.setTransform(T3DDownLegR);
//add the child box to downlegRight
DownLegR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.25f,.10f, primflagsbody,apbody));
LegR.addChild(DownLegR);
//create transform 3d for the rightfeet
Transform3D T3DFeetR = new Transform3D();
T3DFeetR.set(new Vector3f(.0f,-.45f,0f));
//create the child tranform group for the box of thefeetright
TransformGroup FeetR= new TransformGroup();
FeetR.setTransform(T3DFeetR);
//add the child feet right to the downleg
DownLegR.addChild(FeetR);
//create the box for the feetright
FeetR.addChild(new com.sun.j3d.utils.geometry.Box(.16f,.10f,.15f, primflagsbody,apbody));
//rajoute la box zetrunk et des fils
fortheTrunk.addChild(zeTrunk);
fortheTrunk.addChild(fortheHead);
fortheTrunk.addChild(fortheArmL);
fortheTrunk.addChild(fortheArmR);
fortheTrunk.addChild(fortheLegL);
fortheTrunk.addChild(fortheLegR);
//DEBUT CUBE
//beginning of rotation
TransformGroup objSpin=new TransformGroup();
//create transform 3d for box which spin
Transform3D T3DobjSpin = new Transform3D();
T3DobjSpin.set(new Vector3f(-2.50f,.45f,0f));
//create the child tranform group for the box which spin
objSpin.setTransform(T3DobjSpin);
//will allow to modify object while executing
objSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
//alpha rotation time related
Alpha rotationAlpha=new Alpha(-1,900);
Alpha transAlpha=new Alpha(-1,900);
//transform 3d trans for the interpolatipon
Transform3D trans=new Transform3D();
//matrix for 2positions
Point3f[] chemin=new Point3f[3];
chemin[0]=new Point3f(-2.8f,0.40f,1.0f);
chemin[1]=new Point3f(-0.8f,0.40f,1.0f);
chemin[2]=new Point3f(-2.8f,0.40f,1.0f);
//matrix of floats to make the dots match with timeline
float[] timePosition={0.0f,0.50f,1.0f};
PositionPathInterpolator interpol=new PositionPathInterpolator(transAlpha,objSpin,trans,timePosition,chemin);
BoundingSphere bounds3=new BoundingSphere();
interpol.setSchedulingBounds(bounds3);
objSpin.addChild(interpol);
//behviour for our rotation
RotationInterpolator rotator= new RotationInterpolator(rotationAlpha,objSpin);
// area where rotation will be
BoundingSphere bounds=new BoundingSphere();
rotator.setSchedulingBounds(bounds);
objSpin.addChild(rotator);
//end of rtotation
//add transform group objspin to branchgroup humanoid
Humanoid.addChild(objSpin);
//test a cube which heritate of this rotation?
objSpin.addChild(new ColorCube(0.25));
//test
//module cube + transparency
// create an ALPHA transparency apparence (invisible)
Appearance app0x=new Appearance();
app0x.setColoringAttributes(new ColoringAttributes(new Color3f(0.3f,0.2f,1.0f),ColoringAttributes.SHADE_GOURAUD));
app0x.setTransparencyAttributes(new TransparencyAttributes(TransparencyAttributes.NICEST,0.5f));//0.5f represente 50% de transparence
// create the blue sphere which rotate
Transform3D transsphere=new Transform3D();
transsphere.set(new Vector3f(0.0f, -0.1f, 0.3f));
TransformGroup TGsphere=new TransformGroup(transsphere);
TGsphere.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
objSpin.addChild(TGsphere);
//objRotatecube.addChild(TGsphere);
TGsphere.addChild( new Sphere(0.3f,app0x) );
//End Module Cube + Transparency
//END CUBE
//DEBUT WHOLE BIRD
//beginning of Rotation for Bird
TransformGroup Bird=new TransformGroup();
//will allow to modify object while executing
Bird.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
//alpha rotation time related
Alpha rotationAlphaBird=new Alpha(-1,400);
Alpha transAlphaBird=new Alpha(-1,5990);
//transform 3d trans for the interpolatipon
Transform3D transBird=new Transform3D();
//create transform 3d for the Bird
transBird.set(new Vector3f(1.90f,-.45f,0.9f));
//create the child tranform group for the Bird Box
Bird.setTransform(transBird);
//matrix for 2positions
Point3f[] cheminBird=new Point3f[3];
cheminBird[0]=new Point3f(1.95f,0.0f,-6.8f);
cheminBird[1]=new Point3f(1.95f,0.90f,-0.8f);
cheminBird[2]=new Point3f(1.95f,0.0f,5.8f);
//matrix of floats to make the dots match with timeline
float[] timePositionBird={0.00f,0.50f,1.0f};
PositionPathInterpolator interpolBird=new PositionPathInterpolator(transAlphaBird,Bird,transBird,timePosition,cheminBird);
BoundingSphere bounds3Bird=new BoundingSphere();
//BoundingSphere bounds3Bird= new BoundingSphere(new Point3d(0.0, 0.0, -50.0), 0.5);
interpolBird.setSchedulingBounds(bounds3Bird);
Bird.addChild(interpolBird);
//behviour for our rotation
RotationInterpolator rotatorBird= new RotationInterpolator(rotationAlphaBird,Bird);
// area where rotation will be
BoundingSphere boundsBird=new BoundingSphere();
rotatorBird.setSchedulingBounds(boundsBird);
Bird.addChild(rotatorBird);
//end of rotation For Bird
//add transform group objspin to branchgroup humanoid
Humanoid.addChild(Bird);
//debut test APPARENCE Wing Left
//test textures
// Configurer les couleurs
Color3f blackx = new Color3f(0.0f, 0.0f, 0.0f);
Color3f whitex = new Color3f(1.0f, 1.0f, 1.0f);
Color3f redx = new Color3f(0.7f, .75f, .75f);
// Configurer la texture
TextureLoader loaderx = new TextureLoader("C:\\java3d\\pois.jpg", "RGB", new Container());
Texture texturex = loaderx.getTexture();
texturex.setBoundaryModeS(Texture.WRAP);
texturex.setBoundaryModeT(Texture.WRAP);
texturex.setBoundaryColor( new Color4f( 0.0f, 1.0f, 0.0f, 0.0f ) );
// Configurer les attributs de la texture
// Param�tres possibles : REPLACE, BLEND ou DECAL (ici, MODULATE)
TextureAttributes texAttrx = new TextureAttributes();
texAttrx.setTextureMode(TextureAttributes.REPLACE);
Appearance apx = new Appearance();
apx.setTexture(texturex);
apx.setTextureAttributes(texAttrx);
//Configurer le mat�riau
apx.setMaterial(new Material(redx, blackx, redx, blackx, 1.0f));
int primflagsx = Primitive.GENERATE_NORMALS + Primitive.GENERATE_TEXTURE_COORDS;
//End test APPARENCE Wing Left
//test a cube which heritate of this rotation?
// Bird.addChild(new ColorCube(0.8));
//test bird body
// Bird.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.22f,.45f,
// com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
Bird.addChild(new com.sun.j3d.utils.geometry.Box(.25f,.22f,.45f, primflagsx,apx));
//test WingRightBird
//create a transform3D for the BirdWIngR
Transform3D T3DBirdWingR = new Transform3D();
T3DBirdWingR.set(new Vector3f(0.45f,.0f,-0.35f));
//create the tranformgroup for the BirdWIngR
TransformGroup BirdWingR = new TransformGroup();
BirdWingR.setTransform(T3DBirdWingR);
//add the child box to BirdWIngR
// BirdWingR.addChild(new com.sun.j3d.utils.geometry.Box(.43f,.07f,.22f,
// com.sun.j3d.utils.geometry.Box.GENERATE_NORMALS,new Appearance()));
//End test WingRightBird
////////comments/////////
//beginning of Rotating WINR
//----------------------d�but de la cr�ation de la rotation--------------------------------
TransformGroup WinRSpin=new TransformGroup();
// permet de modifier l'objet pendant l'execution
WinRSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
// on cr�e un fonction de rotation au cours du temps
Alpha rotationAlphaWinRSpin=new Alpha(-1,1000);
Transform3D rot = new Transform3D();
rot.rotX((float)Math.PI/- 2.0f);
//rot.rotX(-45);
//rot.rotX((-Math.PI / 4.0)+30);
//rot.rotZ((-Math.PI / 4.0));
//rot.rotX(-Math.PI / 4.0);
//rot.rotY(-Math.PI / 4.0);
// rot.rotZ(-Math.PI / 4.0);
// rot.rotY(00);
//rot.rotZ(45);
// on cr�e un comportement qui va appliquer la rotation � l'objet voulu
// on d�finit la zone sur laquelle va s'appliquer la rotation
//RotationInterpolator rotatorWinRSpin=new RotationInterpolator(rotationAlphaWinRSpin,WinRSpin, rot, 0.50f,(float)(2.0*Math.PI));
RotationInterpolator rotatorWinRSpin=new RotationInterpolator(rotationAlphaWinRSpin,WinRSpin, rot, 25,26);
BoundingSphere boundsWinRSpin=new BoundingSphere(new Point3d((Math.PI / 4.0), 0.0, 0.0), 0.5);
// boundsWinRSpin.setCenter(new Point3d((Math.PI / 4.0),0,0));
boundsWinRSpin.setCenter(new Point3d(-10,0,0));
//boundsWinRSpin.setCenter();
//test put a t3d to a boundingsphere??
//Transform3D T3Dbounding = new Transform3D();
// T3Dbounding.set(new Vector3f(5.00f,0.0f,0.00f));
//WinRSpin.setTransform(T3Dbounding);
//end test put a t3d to a boundingsphere, not working
rotatorWinRSpin.setSchedulingBounds(boundsWinRSpin);
// test BoundingSphere of BODY BIRD rotatorWinRSpin.setSchedulingBounds(boundsBird);
WinRSpin.addChild(rotatorWinRSpin);
//----------------------End de la cr�ation de la rotation--------------------------------
BirdWingR.addChild(WinRSpin);
// on cree un cube qui h�rite de la rotation
//WinRSpin.addChild(new ColorCube(0.5));// de rayon 50 cm
WinRSpin.addChild(new com.sun.j3d.utils.geometry.Box(.43f,.07f,.22f, primflagsx,apx));
//End of Rotating WINR
//////// END comments/////////
//I commented the following, that was the TEST sinusoidal, rotation which help me understood how to rotate wingR
// -----------d�but de cr�ation de la rotation--------------------------------------------------
TransformGroup objSpinxx=new TransformGroup();
// permet de modifier l'objet pendant l'execution
objSpinxx.setCapability(TransformGroup.ALLThank you very much!
I cant believe this little comment has been so helpful!
But yes it is:
I explain, despite my efforts to find, googled it, forums, faqs, etc...
no where it mentionned the manifest.fm file is... INSIDE the .jar!
Your comment "a zip" made me attempt to open it with winrar, and I found a manifest.fm file inside!
So far I was editing the one at the "source" of my project and rebuilding it with netbeans.
I am going to try that now.
Actually.... :( no its mentionning my main class!
Manifest-Version: 1.0
Ant-Version: Apache Ant 1.7.0
Created-By: 10.0-b19 (Sun Microsystems Inc.)
Main-class: courseworkjava3d.Simple3D
Class-Path:
X-COMMENT: Main-Class will be added automatically by buildWell I have no problems uploading you the .jar, it is for a coursework it is not a private project or whatever:
http://www.uploading.com/files/CM2LKWYU/BetaCourseworkJava3d_Final.jar.html
Oh and I felt on your comment "dont ask us" as if I was suppose to know... i'm a beginner, I did not know that! And I tried to give you so many infos so you dont lose your time if you want to help, especially as after my own research I found many, many results for this "main class" and I tried a few solutions!
Edited by: CupofTea on Apr 13, 2008 3:28 AM -
Jar not running is sarge and apache-ant shows error of package not found
Hello,
First of all I am not a java programmer. I work in C/C++/C#.
Currently I am dealing a game written in java (1.5) using netbeans 5.5.0 under windows xp. My target is to compile in my development machine and run in the clients machine. everything works fine in windows xp. I open the netbeans ide, load the necessary class libraries, build the project and run it. it runs without any problem.
The problem begins when I run the same project from linux (fedora). it doest not run. It shows some error.
<error platform="fedora 7">
Exception in thread "AWT-EventQueue-0" java.awt.HeadlessException:
No X11 DISPLAY variable was set, but this program performed an operation which requires it.
at java.awt.GraphicsEnvironment.checkHeadless(GraphicsEnvironment.java:159)
at java.awt.Window.<init>(Window.java:406)
at java.awt.Frame.<init>(Frame.java:402)
at java.awt.Frame.<init>(Frame.java:367)
at javax.swing.JFrame.<init>(JFrame.java:163)
at netbeansapplication.nbApplication.<init>(nbApplication.java:52)
at netbeansapplication.nbApplication$14.run(nbApplication.java:453)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
</error>
Some of these error were resolved when I set the DISPLAY variable (export DISPLAY="127.0.0.1:0") but the other errors were still there.
But when I open this same project in netbeans and resolve the dependencies with class libraries it works ok after compiling.
I can run it from console (java -jar ...)
And again the same source tree shows the following error when I am in windows !!! (by java -jar ... command)
<error platform="WinXPSP2">
Exception in thread "AWT-EventQueue-0" java.lang.NumberFormatException: For input string: ""
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:468)
at java.lang.Integer.parseInt(Integer.java:497)
at cherrygame.global.readConfigForStickProtection(global.java:2060)
at cherrygame.nbCherryGame.<init>(nbCherryGame.java:243)
at netbeansapplication.nbApplication.<init>(nbApplication.java:46)
at netbeansapplication.nbApplication$14.run(nbApplication.java:453)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:597)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:273)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:183)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:173)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:168)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:160)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:121)
</error>
I see that netbeans uses ant to compile project in the background.
then I tried using ant to compile.
doing only `#ant compile` where build.xml resides does the compilation.
after that I try to run it (by java -jar ...). again the above error shows up.
What would I do?
If I compile it with netbeans in machine A then it runs well in A but not in machine B.
If I compile it with ANT in machine A then it doesn't run in A, no chance for machine B.
the contents of my build xml is here
<code file="build.xml">
<![CDATA[
<?xml version="1.0" encoding="UTF-8"?>
<!-- You may freely edit this file. See commented blocks below for -->
<!-- some examples of how to customize the build. -->
<!-- (If you delete it and reopen the project it will be recreated.) -->
<project name="NetBeansApplication" default="default" basedir=".">
<description>Builds, tests, and runs the project NetBeansApplication.</description>
<import file="nbproject/build-impl.xml"/>
<!--
There exist several targets which are by default empty and which can be
used for execution of your tasks. These targets are usually executed
before and after some main targets. They are:
-pre-init: called before initialization of project properties
-post-init: called after initialization of project properties
-pre-compile: called before javac compilation
-post-compile: called after javac compilation
-pre-compile-single: called before javac compilation of single file
-post-compile-single: called after javac compilation of single file
-pre-compile-test: called before javac compilation of JUnit tests
-post-compile-test: called after javac compilation of JUnit tests
-pre-compile-test-single: called before javac compilation of single JUnit test
-post-compile-test-single: called after javac compilation of single JUunit test
-pre-jar: called before JAR building
-post-jar: called after JAR building
-post-clean: called after cleaning build products
(Targets beginning with '-' are not intended to be called on their own.)
Example of inserting an obfuscator after compilation could look like this:
<target name="-post-compile">
<obfuscate>
<fileset dir="${build.classes.dir}"/>
</obfuscate>
</target>
For list of available properties check the imported
nbproject/build-impl.xml file.
Another way to customize the build is by overriding existing main targets.
The targets of interest are:
-init-macrodef-javac: defines macro for javac compilation
-init-macrodef-junit: defines macro for junit execution
-init-macrodef-debug: defines macro for class debugging
-init-macrodef-java: defines macro for class execution
-do-jar-with-manifest: JAR building (if you are using a manifest)
-do-jar-without-manifest: JAR building (if you are not using a manifest)
run: execution of project
-javadoc-build: Javadoc generation
test-report: JUnit report generation
An example of overriding the target for project execution could look like this:
<target name="run" depends="NetBeansApplication-impl.jar">
<exec dir="bin" executable="launcher.exe">
<arg file="${dist.jar}"/>
</exec>
</target>
Notice that the overridden target depends on the jar target and not only on
the compile target as the regular run target does. Again, for a list of available
properties which you can use, check the target you are overriding in the
nbproject/build-impl.xml file.
-->
<target name="-post-jar">
<jar update="true" destfile="${dist.jar}">
<zipfileset src="${libs.swing-layout.classpath}"/>
<zipfileset src="${libs.addMoney.classpath}"/>
<zipfileset src="${libs.NormalWindow.classpath}"/>
</jar>
</target>
</project>
]]>
</code>
my directory contents is here. note. I have 2 packages "cgwindow2" and "NormalWindow" for class libraries and my main application is "CherryGame". The game is "game.jar" in the CherryGame folder.
<listing foldername="CherryGame">
D:\src\java\CherryGame\build.xml
D:\src\java\CherryGame\BW.txt
D:\src\java\CherryGame\config.txt
D:\src\java\CherryGame\config.txt.lin
D:\src\java\CherryGame\flopsfile.txt
D:\src\java\CherryGame\game.jar
D:\src\java\CherryGame\LWMoneyfile.txt
D:\src\java\CherryGame\mfile.txt
D:\src\java\CherryGame\mfile2.txt
D:\src\java\CherryGame\mfile3.txt
D:\src\java\CherryGame\TotalRollsTillBigWin.txt
D:\src\java\CherryGame\UserFile.txt
D:\src\java\CherryGame\build\classes\cherrygame\addMoneyFrame.class
D:\src\java\CherryGame\build\classes\cherrygame\addMoneyPanel.class
D:\src\java\CherryGame\build\classes\cherrygame\cardsPanel.class
D:\src\java\CherryGame\build\classes\cherrygame\cardsWindow$1.class
D:\src\java\CherryGame\build\classes\cherrygame\cardsWindow.class
D:\src\java\CherryGame\build\classes\cherrygame\cherryGameBackPanel.class
D:\src\java\CherryGame\build\classes\cherrygame\cherryWindow.class
D:\src\java\CherryGame\build\classes\cherrygame\customBorderCherryGame.class
D:\src\java\CherryGame\build\classes\cherrygame\FixedGlassPane.class
D:\src\java\CherryGame\build\classes\cherrygame\global.class
D:\src\java\CherryGame\build\classes\cherrygame\helpPanelOne.class
D:\src\java\CherryGame\build\classes\cherrygame\imagesPanel.class
D:\src\java\CherryGame\build\classes\cherrygame\messageWindow.class
D:\src\java\CherryGame\build\classes\cherrygame\messageWindow2.class
D:\src\java\CherryGame\build\classes\cherrygame\messageWindow3.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$1.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$10.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$11.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$12.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$13.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$14.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$15.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$16.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$17.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$18.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$19.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$2.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$20.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$21.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$22.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$23.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$24.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$25.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$26.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$27.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$28$1.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$28$2.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$28.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$29.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$3.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$30.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$31.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$32.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$33.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$34.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$35.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$36.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$37.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$38.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$39.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$4.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$40.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$41.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$42.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$43.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$44.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$45.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$46.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$5.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$6.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$7.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$8.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$9.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame$MyTask.class
D:\src\java\CherryGame\build\classes\cherrygame\nbCherryGame.class
D:\src\java\CherryGame\build\classes\cherrygame\panelMessage.class
D:\src\java\CherryGame\build\classes\cherrygame\panelMessage2.class
D:\src\java\CherryGame\build\classes\cherrygame\panelMessage3.class
D:\src\java\CherryGame\build\classes\lpt\LPT.class
D:\src\java\CherryGame\build\classes\lpt\events\Events.class
D:\src\java\CherryGame\build\classes\lpt\events\LPTEvent.class
D:\src\java\CherryGame\build\classes\lpt\events\LPTEventListener.class
D:\src\java\CherryGame\build\classes\lpt\ieee1284\PPParallelPort.class
D:\src\java\CherryGame\build\classes\netbeansapplication\customBorder.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$1.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$10.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$11.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$12.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$13.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$14.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$2.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$3.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$4.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$5.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$6.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$7.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$8.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication$9.class
D:\src\java\CherryGame\build\classes\netbeansapplication\nbApplication.class
D:\src\java\CherryGame\dist\NetBeansApplication.jar
D:\src\java\CherryGame\dist\javadoc\package-list
D:\src\java\CherryGame\dist\javadoc\stylesheet.css
D:\src\java\CherryGame\dist\javadoc\resources\inherit.gif
D:\src\java\CherryGame\nbproject\build-impl.xml
D:\src\java\CherryGame\nbproject\genfiles.properties
D:\src\java\CherryGame\nbproject\project.properties
D:\src\java\CherryGame\nbproject\project.xml
D:\src\java\CherryGame\nbproject\private\private.properties
D:\src\java\CherryGame\nbproject\private\private.xml
D:\src\java\CherryGame\src\customBorder.java
D:\src\java\CherryGame\src\nbApplication.form
D:\src\java\CherryGame\src\nbApplication.java
D:\src\java\CherryGame\src\cherrygame\addMoneyFrame.form
D:\src\java\CherryGame\src\cherrygame\addMoneyFrame.java
D:\src\java\CherryGame\src\cherrygame\addMoneyPanel.form
D:\src\java\CherryGame\src\cherrygame\addMoneyPanel.java
D:\src\java\CherryGame\src\cherrygame\cardsPanel.java
D:\src\java\CherryGame\src\cherrygame\cardsWindow.form
D:\src\java\CherryGame\src\cherrygame\cardsWindow.java
D:\src\java\CherryGame\src\cherrygame\cherryGameBackPanel.form
D:\src\java\CherryGame\src\cherrygame\cherryGameBackPanel.java
D:\src\java\CherryGame\src\cherrygame\cherryWindow.java
D:\src\java\CherryGame\src\cherrygame\customBorderCherryGame.java
D:\src\java\CherryGame\src\cherrygame\global.java
D:\src\java\CherryGame\src\cherrygame\helpPanelOne.form
D:\src\java\CherryGame\src\cherrygame\helpPanelOne.java
D:\src\java\CherryGame\src\cherrygame\imagesPanel.java
D:\src\java\CherryGame\src\cherrygame\messageWindow.form
D:\src\java\CherryGame\src\cherrygame\messageWindow.java
D:\src\java\CherryGame\src\cherrygame\messageWindow2.form
D:\src\java\CherryGame\src\cherrygame\messageWindow2.java
D:\src\java\CherryGame\src\cherrygame\messageWindow3.form
D:\src\java\CherryGame\src\cherrygame\messageWindow3.java
D:\src\java\CherryGame\src\cherrygame\nbCherryGame.form
D:\src\java\CherryGame\src\cherrygame\nbCherryGame.java
D:\src\java\CherryGame\src\cherrygame\panelMessage.form
D:\src\java\CherryGame\src\cherrygame\panelMessage.java
D:\src\java\CherryGame\src\cherrygame\panelMessage2.form
D:\src\java\CherryGame\src\cherrygame\panelMessage2.java
D:\src\java\CherryGame\src\cherrygame\panelMessage3.form
D:\src\java\CherryGame\src\cherrygame\panelMessage3.java
D:\src\java\CherryGame\src\lpt\LPT.java
D:\src\java\CherryGame\src\lpt\events\Events.java
D:\src\java\CherryGame\src\lpt\events\LPTEvent.java
D:\src\java\CherryGame\src\lpt\events\LPTEventListener.java
D:\src\java\CherryGame\src\lpt\ieee1284\PPParallelPort.java
</listing>
<listing foldername="NormalWindow">
D:\src\java\NormalWindow\build.xml
D:\src\java\NormalWindow\manifest.mf
D:\src\java\NormalWindow\build\classes\normalwindow\global.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$1.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$10.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$11.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$12.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$13.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$14.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$15.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$16.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$17.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$2.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$3.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$4.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$5.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$6.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$7.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$8.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow$9.class
D:\src\java\NormalWindow\build\classes\normalwindow\NormalWindow.class
D:\src\java\NormalWindow\build\classes\normalwindow\PasswordDialog$1.class
D:\src\java\NormalWindow\build\classes\normalwindow\PasswordDialog$2.class
D:\src\java\NormalWindow\build\classes\normalwindow\PasswordDialog$3.class
D:\src\java\NormalWindow\build\classes\normalwindow\PasswordDialog$4.class
D:\src\java\NormalWindow\build\classes\normalwindow\PasswordDialog$5.class
D:\src\java\NormalWindow\build\classes\normalwindow\PasswordDialog.class
D:\src\java\NormalWindow\dist\NormalWindow.jar
D:\src\java\NormalWindow\dist\README.TXT
D:\src\java\NormalWindow\dist\_normalwindow.jar
D:\src\java\NormalWindow\dist\lib\swing-layout-1.0.jar
D:\src\java\NormalWindow\nbproject\build-impl.xml
D:\src\java\NormalWindow\nbproject\genfiles.properties
D:\src\java\NormalWindow\nbproject\project.properties
D:\src\java\NormalWindow\nbproject\project.xml
D:\src\java\NormalWindow\nbproject\private\private.properties
D:\src\java\NormalWindow\nbproject\private\private.xml
D:\src\java\NormalWindow\src\normalwindow\global.java
D:\src\java\NormalWindow\src\normalwindow\NormalWindow.form
D:\src\java\NormalWindow\src\normalwindow\NormalWindow.java
D:\src\java\NormalWindow\src\normalwindow\PasswordDialog.form
D:\src\java\NormalWindow\src\normalwindow\PasswordDialog.java
</listing>
<listing foldername="cgwindow2">
D:\src\java\cgwindow2\build.xml
D:\src\java\cgwindow2\manifest.mf
D:\src\java\cgwindow2\mfile.txt
D:\src\java\cgwindow2\UserFile.txt
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyPanel.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$1.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$10.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$11.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$12.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$13.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$14.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$2.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$3.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$4.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$5.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$6.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$7.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$8.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow$9.class
D:\src\java\cgwindow2\build\classes\addmoney\addMoneyWindow.class
D:\src\java\cgwindow2\build\classes\addmoney\customBorderForAddMoneyWindow.class
D:\src\java\cgwindow2\build\classes\addmoney\global.class
D:\src\java\cgwindow2\dist\cgwindow2.jar
D:\src\java\cgwindow2\dist\README.TXT
D:\src\java\cgwindow2\dist\lib\swing-layout-1.0.jar
D:\src\java\cgwindow2\nbproject\build-impl.xml
D:\src\java\cgwindow2\nbproject\genfiles.properties
D:\src\java\cgwindow2\nbproject\jax-ws.xml
D:\src\java\cgwindow2\nbproject\project.properties
D:\src\java\cgwindow2\nbproject\project.xml
D:\src\java\cgwindow2\nbproject\private\private.properties
D:\src\java\cgwindow2\nbproject\private\private.xml
D:\src\java\cgwindow2\src\addmoney\addMoneyPanel.form
D:\src\java\cgwindow2\src\addmoney\addMoneyPanel.java
D:\src\java\cgwindow2\src\addmoney\addMoneyWindow.form
D:\src\java\cgwindow2\src\addmoney\addMoneyWindow.java
D:\src\java\cgwindow2\src\addmoney\customBorderForAddMoneyWindow.java
D:\src\java\cgwindow2\src\addmoney\global.java
</listing>
About my thread subject, my clients machine is a debian sarge 3.0 and when I compiled it there with ANT It says, "normalwindow" package not found. other 2 errors were due to "normalwindow".
Edited by: mokaddim on Sep 12, 2007 2:08 PMJulio.Faerman wrote:
Hello,
I am trying to run my annotation processor using ant.
I already built the processor, the javax.annotation.processor.Processor file is in the correct place with the correct content.
The jar with the processor is in the classpath (i can see it in ant -v), but it does not process my classes. in fact, i get the warning:
warning: Annotation processing without compilation requested but no processors were found.Do i have to specify -processor or -processorpath or can i just leave it to the default classpath scanning?When -processor is not given, a service loader is used to find the annotation processors (if any). In addition to the class files of the process, to allow your processor to be found as a service, make sure you've also provided the needed META-INF data in the jar file. The general service file format is described in
http://java.sun.com/javase/6/docs/api/java/util/ServiceLoader.html
That said, I'd recommend setting an explicit processor path separate from your general classpath. -
Hi,
Can an incorrect taglet name cause javadoc generation to crash/ hang?
We have a custon taglet with the name of @abc.comment
However, someone added a period at the end of the name by mistake: @abc.comment.
This caused the cruise control build to crash...
Any clues on why this would have happened would be helpful. Also, how do you debug a custom doclet?
Thanks in advance.
BBAlso, how do you debug a custom doclet?Well, the usual way: you use a debugger ;-)
Since Javadoc features a programmatic interface, it's easy to write a simple main class.
Here is my test entry class, just replace "your.doclet.name.here" with the actual name of your custom doclet.
TestRun requires a filename as sole argument/cmd option, this filename should point to a standard Javadoc options file. To successfully use TestRun, the classes that make up your custom doclet and the JDK tools.jar should (probably) be in the classpath.
* @(#) TestRun.java 1.00
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.util.StringTokenizer;
* <code>TestRun</code>
* @author Thomas Behr 27.11.2003
public class TestRun
public static void main( final String[] args )
if ( args.length != 1 || !(new java.io.File( args[0] )).isFile() )
System.err.println( "usage: java TestRun <filename>" );
return;
com.sun.tools.javadoc.Main.execute( "javadoc",
"your.doclet.name.here",
processOptionsFile( args[0] ) );
private static String[] processOptionsFile( final String filename )
final String options = readOptionsFile( filename );
final StringTokenizer tokens = new StringTokenizer( options );
final String[] jargs = new String[tokens.countTokens()];
for ( int i = 0; i < jargs.length; ++i )
jargs[i] = tokens.nextToken();
return jargs;
private static String readOptionsFile( final String filename )
final StringBuffer buffer = new StringBuffer();
BufferedReader br = null;
try
br = new BufferedReader( new FileReader( filename ) );
String line;
while ( (line = br.readLine()) != null )
buffer.append( line ).append( "\n" );
catch ( final IOException ioe )
ioe.printStackTrace();
buffer.setLength( 0 );
finally
if ( br != null )
try
br.close();
catch ( IOException ioe )
ioe.printStackTrace();
return buffer.toString();
} -
IntelliJ IDEA 7 vs JDeveloper 11g Pros and Cons
Here is a thread we can discuss what we like or dislike as a comparision between IDEA 7 and JDeveloper.
Surya De mentioned in the other thread that IDEA has exceptionally strong code editing and code analysis features. In my experience I don't find IDEA's code analysis any more useful than JDeveloper's. And it's details about the code editing that I like in JDeveloper and dislike in IDEA.
Some of the details I find annoying in IDEA:
Code Folding - IDEA seems to unfold when I don't want it to; IDEA requires a multi-step menu choice whereas in JDeveloper I just right click on the folding area and select the option I want.
Java Doc generate - I prefer the way JDeveloper lets me generate the JavaDoc stub for a method.
Light bulb - I'm not sure how to describe it but in IDEA a statement may be underlined and flagged as wrong or might have an option to change it or improve it, in JDeveloper there is a nice simple light bulb I can click on to access these choices, in IDEA that "light bulb" seems to be very elusive and I can't figure out how to get it to stay there so I can click on it (most of the time I end up just manually putting in the code rather than using JDeveloper's wonderful assistance).
In what way is IDEA's Ctrl+N different from JDeveloper's Ctrl+-? They both work equivalently as far as I can see (JDeveloper is a little too aggressive in trying to guess what class you wanted)
IDEA forces me to manually set the run target instead of intelligently trying to run the class I am working on. This could be a pro or a con, but I'm used to JDeveloper's style and thus I always catch myself running the wrong thing in IDEA.
IDEA is slow compared to JDeveloper.
IDEA is terrible for building a standard client application JAR file (JDeveloper does this very nicely with it's deploy profiles).
IDEA lacks "status icons" for version control, I find the slight color change of file names to be inferior.
IDEA's non-standard usage of the term "project" is confusing.
IDEA lacks the nice little "X" close icon for closing a file you are editing.
"History" comparison I find nicer in JDeveloper.
In IDEA if I have folded code I have to hover over the code itself (making for a lot of mouse movement) to quickly view the folded code (without unfolding it), in JDeveloper I can just run my mouse up and down the left edge where the fold icons are.Code Folding - Simple you can set it up in the Settings -> Editor -> Appearance tab an select which ones to collapse by default. All you do is mouse over the folded area in the editor and it will show you without expanding, the contents inside it...until you click that then it will explode the folded area.
Javadoc generation - Never tried it. But writing comments is easy and you dont need to know any syntax since it gives you suggestions. You will see them in yellow or red in the error stripe bar on the right just like Jdeveloper.
Light bulb - Intellij has light bults also and its context sensitive. Sometimes if you write bad code it will highlight and make it show as yellow on the stripe bar on the right and if you click then you will see a light bult on the left with a suggestion to rewrite the code and it rewrites the code for you. You can set a profile as to what the editor should look for in terms of non-optimal coding. A quick example is if you have code like (Long[]) zoneIds.toArray(new Long[0]) Intellij would rewrite it as (Long[]) zoneIds.toArray(new Long[zoneIds.size()]) and give an explanation about how the previous would be using reflection and how this one would not. This is just a small example. There are literally 100s of settings for the code analysis tool.
Speed - I dont see any difference. I am running Intellij on Mustang the latest build. And so is my JDeveloper at home.
As for the other stuff you mentioned with the project and jar file etc I dont bother because we are using Ant. I can set up the ant build file into Intellij and just right click on the target I want. But most of all I like using command line better.
IDEA does lack the little x close icon on the tab for the file you are editing but seriously hit Ctrl F4 or just middle click. Thats a bit ridiculous for mentioning that.
Local History/ CVS History - I do like JDevelopers a bit better. But Intellij has more details. As in if you fired up debug mode and made some changes in your code it will mention that as an event in your local history and that makes it easier which JDeveloper doe not have.
'In IDEA if I have folded code I have to hover over the code itself (making for a lot of mouse movement) to quickly view the folded code (without unfolding it), in JDeveloper I can just run my mouse up and down the left edge where the fold icons are. '
Dont even know how to reply to that...I dont count mouse movement as one of my criteria...
You can right click on a file in Intellij, hit Analyze code and it will show you a list of things in the code that can be cleaned up/fixed/etc based on profiles you select. They can be anything from performance fixes to too complex if statements. Pretty much as if you are doing code review. There are tons of options. And you can see all the items that Intellij is suggesting to fix, right click and just Apply Fix and they all get cleaned up in one shot. You can do this to your modules as well.
DSM - Go to Intellij's website and look this one up. Really useful for analyzing your overall codebase and finding circular dependencies etc etc.
Also the code completion in the editor in Intellij is a lot smarter. I can use Ctrl Space for the regular thing that JDeveloper does. But Ctrl SHift Space does smart code completion which I find extremely useful when writing stuff like say...uh...SomeObject obj = new SomeObject(). I can just type SomeObject obj = n and hit Ctrl Shift Space and it will write the rest of of it for me. Also if the constructor requires some parameters and you have those parameters initialized it smartly sticks those in there for me.
Also when you are naming objects or variables with Ctrl Space it can put a Java Coding Convention compliant name for your object or variable so you dont have to think of one and its pretty cool. A lot of nifty little things in there.
Lets see Alt Insert shorcut is awesome for constructor, getter/setter generation and a few others.
Also Ctrl J is an awesome feature to have where there are code templates already in place and you can just have boiler plate code for iterating over array, writing for loops etc so you just select what you want and based on what variables are in place it will automatically write your loop structures, your try catch blocks etc for you.
Also Ctrl H is another feature I like that shows in a window on the side the hierarchy of the class you are looking at.
Theres lots of little gems in there that I cant thing of writing about right now.
I still dont understand 'IDEA's non-standard usage of the term "project" is confusing.' If that is a complaint it seems you are reaching!
Like I said. Intellij is superior in terms of usability with keyboard and its editor and code analysis. You dont need findbugs or PMD for that. Its better actually than them.
But thats it. I think JDeveloper in terms of the wizards and all that I like that. Thats why I use JDeveloper when using SOA, or doing quick prototyping. And it works seamlessly if you have a full Oracle stack. But if you are using Apache or other web servers Intellij makes it easy since you jsut configure the server in your IDE and it does the rest.
Also it comes with Hibernate, Spring, support and now Flex (Intellij 8) out of the box. Thats pretty cool. Very useful. -
When I create an EJB Transport Business Service, after selecting the jar that has the EJB 2.1 artefacts (Remote, Home, etc) the oepe plugin fails and can't continue.
As I understand it seems that there is a problem with the classpath of ant build.xml that oepe creates inside folder /tmp/alsbejbtransport/ to compile the bs and generate the wsdl. I checked if tools.jar is in the classpath (in eclipse) and is included, so I can't figure out wich is the problem.
I found this in Oracle, but not helps solve the problem:
BEA-398120
Error: The WSDL for the typed transport endpoint could not be accessed.
Description
There was a problem retrieving the WSDL from the typed transport service endpoint at the time of service registration
Action
Contact technical support
This is the the full stacktrace that shows eclipse.
Generate : Error during generation of the WSDL:
BUILD FAILED
java.lang.NoClassDefFoundError: com/sun/javadoc/Type
at com.bea.util.jam.provider.JamServiceFactoryImpl.createSourceBuilder(JamServiceFactoryImpl.java:205)
at com.bea.util.jam.provider.JamServiceFactoryImpl.createBuilder(JamServiceFactoryImpl.java:158)
at com.bea.util.jam.provider.JamServiceFactoryImpl.createClassLoader(JamServiceFactoryImpl.java:137)
at com.bea.util.jam.provider.JamServiceFactoryImpl.createService(JamServiceFactoryImpl.java:78)
at weblogic.wsee.util.JamUtil.parseSource(JamUtil.java:152)
at weblogic.wsee.tools.anttasks.JwsLoader.loadJClasses(JwsLoader.java:186)
at weblogic.wsee.tools.anttasks.JwsLoader.load(JwsLoader.java:75)
at weblogic.wsee.tools.anttasks.JwsModule.loadWebServices(JwsModule.java:569)
at weblogic.wsee.tools.anttasks.JwsModule.generate(JwsModule.java:369)
at weblogic.wsee.tools.anttasks.JwsModule.build(JwsModule.java:256)
at weblogic.wsee.tools.anttasks.JwscTask.execute(JwscTask.java:184)
at org.apache.tools.ant.UnknownElement.execute(UnknownElement.java:288)
at sun.reflect.GeneratedMethodAccessor1.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at org.apache.tools.ant.dispatch.DispatchUtils.execute(DispatchUtils.java:106)
at org.apache.tools.ant.Task.perform(Task.java:348)
at org.apache.tools.ant.Target.execute(Target.java:357)
at org.apache.tools.ant.Target.performTasks(Target.java:385)
at org.apache.tools.ant.Project.executeSortedTargets(Project.java:1337)
at org.apache.tools.ant.Project.executeTarget(Project.java:1306)
at org.apache.tools.ant.helper.DefaultExecutor.executeTargets(DefaultExecutor.java:41)
at org.apache.tools.ant.Project.executeTargets(Project.java:1189)
at org.apache.tools.ant.Main.runBuild(Main.java:758)
at org.apache.tools.ant.Main.startAnt(Main.java:217)
at org.apache.tools.ant.launch.Launcher.run(Launcher.java:257)
at org.apache.tools.ant.launch.Launcher.main(Launcher.java:104)
Caused by: java.lang.ClassNotFoundException: com.sun.javadoc.Type
at org.apache.tools.ant.AntClassLoader.findClassInComponents(AntClassLoader.java:1400)
at org.apache.tools.ant.AntClassLoader.findClass(AntClassLoader.java:1341)
at org.apache.tools.ant.AntClassLoader.loadClass(AntClassLoader.java:1088)
at java.lang.ClassLoader.loadClass(ClassLoader.java:356)
... 27 more
Total time: 0 seconds
Eclipse Installation details:
*** System properties:
eclipse.application=org.eclipse.ui.ide.workbench
eclipse.buildId=M20110909-1335
eclipse.commands=-os
linux
-ws
gtk
-arch
x86_64
-showsplash
-launcher
{home}/Development/oepe-indigo/eclipse
-name
Eclipse
--launcher.library
{home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.100.v20110505/eclipse_1407.so
-startup
{home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
--launcher.overrideVmargs
-exitdata
1e418010
-vm
/usr/bin/java
eclipse.home.location=file:{home}/Development/oepe-indigo/
eclipse.launcher={home}/Development/oepe-indigo/eclipse
eclipse.launcher.name=Eclipse
[email protected]/../p2/
eclipse.p2.profile=PlatformProfile
eclipse.product=org.eclipse.platform.ide
eclipse.startTime=1374623921455
eclipse.vm=/usr/bin/java
eclipse.vmargs=-Xms256m
-Xmx768m
-XX:MaxPermSize=512m
-Dsun.lang.ClassLoader.allowArraySyntax=true
-Dweblogic.home={home}/Oracle/Middleware/wlserver_10.3
-Dharvester.home={home}/Oracle/Middleware/Oracle_OSB1/harvester
-Dosb.home={home}/Oracle/Middleware/Oracle_OSB1
-Dosgi.bundlefile.limit=750
-Dosgi.nl=en_US
-Dmiddleware.home={home}/Oracle/Middleware
-jar
{home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
equinox.use.ds=true
file.encoding=UTF-8
file.encoding.pkg=sun.io
file.separator=/
guice.disable.misplaced.annotation.check=true
harvester.home={home}/Oracle/Middleware/Oracle_OSB1/harvester
http.nonProxyHosts=localhost
java.awt.graphicsenv=sun.awt.X11GraphicsEnvironment
java.awt.printerjob=sun.print.PSPrinterJob
java.class.path={home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
java.class.version=50.0
java.endorsed.dirs=/usr/lib/jvm/jdk1.6.0_45/jre/lib/endorsed
java.ext.dirs=/usr/lib/jvm/jdk1.6.0_45/jre/lib/ext:/usr/java/packages/lib/ext
java.home=/usr/lib/jvm/jdk1.6.0_45/jre
java.io.tmpdir=/tmp
java.library.path=/usr/lib/jvm/jdk1.6.0_45/jre/lib/amd64/server:/usr/lib/jvm/jdk1.6.0_45/jre/lib/amd64:/usr/lib/jvm/jdk1.6.0_45/jre/../lib/amd64:/usr/java/packages/lib/amd64:/usr/lib64:/lib64:/lib:/usr/lib
java.protocol.handler.pkgs=null|com.bea.wli.sb.resources.url|com.bea.wli.sb.resources.jca.upgrade.url|weblogic.utils|weblogic.utils|weblogic.utils|weblogic.net|weblogic.net
java.runtime.name=Java(TM) SE Runtime Environment
java.runtime.version=1.6.0_45-b06
java.specification.name=Java Platform API Specification
java.specification.vendor=Sun Microsystems Inc.
java.specification.version=1.6
java.vendor=Sun Microsystems Inc.
java.vendor.url=http://java.sun.com/
java.vendor.url.bug=http://java.sun.com/cgi-bin/bugreport.cgi
java.version=1.6.0_45
java.vm.info=mixed mode
java.vm.name=Java HotSpot(TM) 64-Bit Server VM
java.vm.specification.name=Java Virtual Machine Specification
java.vm.specification.vendor=Sun Microsystems Inc.
java.vm.specification.version=1.0
java.vm.vendor=Sun Microsystems Inc.
java.vm.version=20.45-b01
javax.rmi.CORBA.PortableRemoteObjectClass=weblogic.iiop.PortableRemoteObjectDelegateImpl
javax.rmi.CORBA.UtilClass=weblogic.iiop.UtilDelegateImpl
jna.platform.library.path=/usr/lib/x86_64-linux-gnu:/lib/x86_64-linux-gnu:/lib64:/usr/lib:/lib
line.separator=
middleware.home={home}/Oracle/Middleware
oracle.eclipse.tools.weblogic.ui.isWebLogicServer=true
org.apache.commons.logging.Log=org.apache.commons.logging.impl.NoOpLog
org.eclipse.equinox.launcher.splash.location={home}/Development/oepe-indigo/plugins/org.eclipse.platform_3.7.1.v201109091335/splash.bmp
org.eclipse.equinox.simpleconfigurator.configUrl=file:org.eclipse.equinox.simpleconfigurator/bundles.info
org.eclipse.m2e.log.dir={home}/workspace/pragma/.metadata/.plugins/org.eclipse.m2e.logback.configuration
org.eclipse.update.reconcile=false
org.omg.CORBA.ORBClass=weblogic.corba.orb.ORB
org.omg.CORBA.ORBSingletonClass=weblogic.corba.orb.ORB
org.osgi.framework.executionenvironment=OSGi/Minimum-1.0,OSGi/Minimum-1.1,OSGi/Minimum-1.2,JRE-1.1,J2SE-1.2,J2SE-1.3,J2SE-1.4,J2SE-1.5,JavaSE-1.6
org.osgi.framework.language=en
org.osgi.framework.os.name=Linux
org.osgi.framework.os.version=3.8.0
org.osgi.framework.processor=x86-64
org.osgi.framework.system.capabilities=osgi.ee; osgi.ee="OSGi/Minimum"; version:List<Version>="1.0, 1.1, 1.2",osgi.ee; osgi.ee="JavaSE"; version:List<Version>="1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6"
org.osgi.framework.system.packages=javax.accessibility,javax.activation,javax.activity,javax.annotation,javax.annotation.processing,javax.crypto,javax.crypto.interfaces,javax.crypto.spec,javax.imageio,javax.imageio.event,javax.imageio.metadata,javax.imageio.plugins.bmp,javax.imageio.plugins.jpeg,javax.imageio.spi,javax.imageio.stream,javax.jws,javax.jws.soap,javax.lang.model,javax.lang.model.element,javax.lang.model.type,javax.lang.model.util,javax.management,javax.management.loading,javax.management.modelmbean,javax.management.monitor,javax.management.openmbean,javax.management.relation,javax.management.remote,javax.management.remote.rmi,javax.management.timer,javax.naming,javax.naming.directory,javax.naming.event,javax.naming.ldap,javax.naming.spi,javax.net,javax.net.ssl,javax.print,javax.print.attribute,javax.print.attribute.standard,javax.print.event,javax.rmi,javax.rmi.CORBA,javax.rmi.ssl,javax.script,javax.security.auth,javax.security.auth.callback,javax.security.auth.kerberos,javax.security.auth.login,javax.security.auth.spi,javax.security.auth.x500,javax.security.cert,javax.security.sasl,javax.sound.midi,javax.sound.midi.spi,javax.sound.sampled,javax.sound.sampled.spi,javax.sql,javax.sql.rowset,javax.sql.rowset.serial,javax.sql.rowset.spi,javax.swing,javax.swing.border,javax.swing.colorchooser,javax.swing.event,javax.swing.filechooser,javax.swing.plaf,javax.swing.plaf.basic,javax.swing.plaf.metal,javax.swing.plaf.multi,javax.swing.plaf.synth,javax.swing.table,javax.swing.text,javax.swing.text.html,javax.swing.text.html.parser,javax.swing.text.rtf,javax.swing.tree,javax.swing.undo,javax.tools,javax.transaction,javax.transaction.xa,javax.xml,javax.xml.bind,javax.xml.bind.annotation,javax.xml.bind.annotation.adapters,javax.xml.bind.attachment,javax.xml.bind.helpers,javax.xml.bind.util,javax.xml.crypto,javax.xml.crypto.dom,javax.xml.crypto.dsig,javax.xml.crypto.dsig.dom,javax.xml.crypto.dsig.keyinfo,javax.xml.crypto.dsig.spec,javax.xml.datatype,javax.xml.namespace,javax.xml.parsers,javax.xml.soap,javax.xml.stream,javax.xml.stream.events,javax.xml.stream.util,javax.xml.transform,javax.xml.transform.dom,javax.xml.transform.sax,javax.xml.transform.stax,javax.xml.transform.stream,javax.xml.validation,javax.xml.ws,javax.xml.ws.handler,javax.xml.ws.handler.soap,javax.xml.ws.http,javax.xml.ws.soap,javax.xml.ws.spi,javax.xml.ws.wsaddressing,javax.xml.xpath,org.ietf.jgss,org.omg.CORBA,org.omg.CORBA_2_3,org.omg.CORBA_2_3.portable,org.omg.CORBA.DynAnyPackage,org.omg.CORBA.ORBPackage,org.omg.CORBA.portable,org.omg.CORBA.TypeCodePackage,org.omg.CosNaming,org.omg.CosNaming.NamingContextExtPackage,org.omg.CosNaming.NamingContextPackage,org.omg.Dynamic,org.omg.DynamicAny,org.omg.DynamicAny.DynAnyFactoryPackage,org.omg.DynamicAny.DynAnyPackage,org.omg.IOP,org.omg.IOP.CodecFactoryPackage,org.omg.IOP.CodecPackage,org.omg.Messaging,org.omg.PortableInterceptor,org.omg.PortableInterceptor.ORBInitInfoPackage,org.omg.PortableServer,org.omg.PortableServer.CurrentPackage,org.omg.PortableServer.POAManagerPackage,org.omg.PortableServer.POAPackage,org.omg.PortableServer.portable,org.omg.PortableServer.ServantLocatorPackage,org.omg.SendingContext,org.omg.stub.java.rmi,org.w3c.dom,org.w3c.dom.bootstrap,org.w3c.dom.css,org.w3c.dom.events,org.w3c.dom.html,org.w3c.dom.ls,org.w3c.dom.ranges,org.w3c.dom.stylesheets,org.w3c.dom.traversal,org.w3c.dom.views,org.w3c.dom.xpath,org.xml.sax,org.xml.sax.ext,org.xml.sax.helpers
org.osgi.framework.uuid=901615cd-f3f3-0012-11b6-a3bca4d97ac1
org.osgi.framework.vendor=Eclipse
org.osgi.framework.version=1.6.0
org.osgi.supports.framework.extension=true
org.osgi.supports.framework.fragment=true
org.osgi.supports.framework.requirebundle=true
os.arch=amd64
os.name=Linux
os.version=3.8.0-26-generic
osb.home={home}/Oracle/Middleware/Oracle_OSB1
osgi.arch=x86_64
osgi.bundlefile.limit=750
osgi.bundles=reference:file:javax.transaction_1.1.1.v201105210645.jar,reference:file:org.eclipse.equinox.simpleconfigurator_1.0.200.v20110502-1955.jar@1:start
osgi.bundles.defaultStartLevel=4
osgi.bundlestore={home}/Development/oepe-indigo/configuration/org.eclipse.osgi/bundles
osgi.configuration.area=file:{home}/Development/oepe-indigo/configuration/
osgi.framework=file:{home}/Development/oepe-indigo/plugins/org.eclipse.osgi_3.7.1.R37x_v20110808-1106.jar
osgi.framework.extensions=reference:file:javax.transaction_1.1.1.v201105210645.jar
osgi.framework.shape=jar
osgi.framework.version=3.7.1.R37x_v20110808-1106
osgi.frameworkClassPath=., file:{home}/Development/oepe-indigo/plugins/javax.transaction_1.1.1.v201105210645.jar
osgi.install.area=file:{home}/Development/oepe-indigo/
osgi.instance.area=file:{home}/workspace/pragma/
osgi.instance.area.default=file:{home}/workspace/
osgi.logfile={home}/workspace/pragma/.metadata/.log
osgi.manifest.cache={home}/Development/oepe-indigo/configuration/org.eclipse.osgi/manifests
osgi.nl=en_US
osgi.nl.user=en_US
osgi.os=linux
osgi.splashLocation={home}/Development/oepe-indigo/plugins/org.eclipse.platform_3.7.1.v201109091335/splash.bmp
osgi.splashPath=platform:/base/plugins/org.eclipse.platform
osgi.syspath={home}/Development/oepe-indigo/plugins
osgi.tracefile={home}/workspace/pragma/.metadata/trace.log
osgi.ws=gtk
path.separator=:
securerandom.source=file:/dev/./urandom
socksNonProxyHost=localhost
sun.arch.data.model=64
sun.boot.class.path=/usr/lib/jvm/jdk1.6.0_45/jre/lib/resources.jar:/usr/lib/jvm/jdk1.6.0_45/jre/lib/rt.jar:/usr/lib/jvm/jdk1.6.0_45/jre/lib/sunrsasign.jar:/usr/lib/jvm/jdk1.6.0_45/jre/lib/jsse.jar:/usr/lib/jvm/jdk1.6.0_45/jre/lib/jce.jar:/usr/lib/jvm/jdk1.6.0_45/jre/lib/charsets.jar:/usr/lib/jvm/jdk1.6.0_45/jre/lib/modules/jdk.boot.jar:/usr/lib/jvm/jdk1.6.0_45/jre/classes
sun.boot.library.path=/usr/lib/jvm/jdk1.6.0_45/jre/lib/amd64
sun.cpu.endian=little
sun.cpu.isalist=
sun.desktop=gnome
sun.io.unicode.encoding=UnicodeLittle
sun.java.command={home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar -os linux -ws gtk -arch x86_64 -showsplash -launcher {home}/Development/oepe-indigo/eclipse -name Eclipse --launcher.library {home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher.gtk.linux.x86_64_1.1.100.v20110505/eclipse_1407.so -startup {home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar --launcher.overrideVmargs -exitdata 1e418010 -vm /usr/bin/java -vmargs -Xms256m -Xmx768m -XX:MaxPermSize=512m -Dsun.lang.ClassLoader.allowArraySyntax=true -Dweblogic.home={home}/Oracle/Middleware/wlserver_10.3 -Dharvester.home={home}/Oracle/Middleware/Oracle_OSB1/harvester -Dosb.home={home}/Oracle/Middleware/Oracle_OSB1 -Dosgi.bundlefile.limit=750 -Dosgi.nl=en_US -Dmiddleware.home={home}/Oracle/Middleware -jar {home}/Development/oepe-indigo//plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar
sun.java.launcher=SUN_STANDARD
sun.jnu.encoding=UTF-8
sun.lang.ClassLoader.allowArraySyntax=true
sun.management.compiler=HotSpot 64-Bit Tiered Compilers
sun.os.patch.level=unknown
svnkit.http.methods=Basic
svnkit.library.gnome-keyring.enabled=false
user.country=AR
user.dir={home}/Development/oepe-indigo
user.home={home}
user.language=es
user.name={username}
user.timezone=America/Argentina/Buenos_Aires
weblogic.home={home}/Oracle/Middleware/wlserver_10.3
Thanks!!run this one in command prompt and then convert the applet using converter tool
JC_HOME = C:\java_card_kit-2_2_2\bin\
set CLASSES=%JCHOME%\lib\apduio.jar;%JC_HOME%\lib\apdutool.jar;%JC_HOME%\lib\jcwde.jar;%JC_HOME%\lib\converter.jar;%JC_HOME%\lib\scriptgen.jar;%JC_HOME%\lib\offcardverifier.jar;%JC_HOME%\lib\api.jar;%JC_HOME%\lib\installer.jar;%JC_HOME%\lib\capdump.jar;
D:\NareshPalle\jcardRE\Smart\src>java -classpath %_CLASSES% com.sun.javacard.con
verter.Converter -out EXP JCA CAP -exportpath .\exp -applet 0x0a:0x00:0x00:0x00:0x0e:0x01:0x02:
0x03:0x04:0x05:0x06 PackageName appletName 0x01:0x02:0x03:0x04:0x05:0x0
6:0x07:0x08 1.0
or
go to following directory and run the converter tool in command prompt
step 1: cd C:\java_card_kit-2_2_2\bin\
then run this command under the above directory
step 2:converter -classdir E:\Pathof Your applet class file -out EXP JCA CAP -exportpath E:\path of exp files folder -applet AID PackageName AppletName PackAID major.minor no
For more doubts mail me....
*[removed by moderator]*
Thanks and Regards
NareshPalle
Edited by: EJP on 31/03/2012 20:09: removed your email address. Unless you like spam and unless you think these forums are provided for your personal benefit only, posting an email address here serves no useful purpose whatsoever. -
ABAP Documentation Generation, Javadoc-like
Hello everyone,
I've got one topic to discuss that I do not find very much information about on SCN. It's about documentation. and I don't mean SAP documentation like help.sap.com, but the documentation about the software we (=developers) are producing by writing ABAP-code. That thing that we tend to neglect.
So is there any tool that is similar to [Javadoc|http://en.wikipedia.org/wiki/Javadoc], something like a ABAP Documentation Generator? A tool that generates a code-based documentation out of the source-code comments? As far as I know, there is no such functionality in the ABAP workbench. The only community project I found was ABAP Docs, but that seems to be inactive and is not even accessibly online.
How do you document your software? Do you use external tools, anything that is integrated into the SAP system? Or is it a completely segregated solution like we use in my company (Word)? What strategies do you use to create Architecture Documentation, Technical Documentation and End User Documentation?
It seems to me that there are lots of software solutions that can create modern documentation including different formats, layout templates, guidelines etc. But I haven't found anything related to ABAP development. Maybe the best example is Wikipedias [Comparison of documentation generators|http://en.wikipedia.org/wiki/Comparison_of_documentation_generators]. Just search for ABAP.
I am looking forward to read about your experiences in documenting ABAP software!Surprisingly (more or less) the list has no entry for a tool that supports ABAP, that was my point.
In the [Language support|http://en.wikipedia.org/wiki/Comparison_of_documentation_generators#Language_support] table there is an Any With Comments column. Looking at the examples for [Natural Docs|http://en.wikipedia.org/wiki/Natural_Docs] and [ROBODoc|http://en.wikipedia.org/wiki/ROBODoc], they might work for ABAP too. YMMV
Hope this helps,
Rossen -
Javadoc code generation?
I have a javadoc which I wish to translate into code stubs.
For example, if I have some javadoc like:
"private void func(E p1, E p2)
Does Stuff
Parameters:
p1 - blah...
p2 - blah..."
it will generate some code like:
* Does Stuff
* @param p1 - blah...
* @param p2 - blah...
private void Func(E p1, E p2){
I just need code stubs, obviously it can't generate any real code.I was looking for a utility to do this awhile back but couldn't seem to find one. I had a feeling there's nothing out there and was wondering if this would be an interesting problem for someone to work on. Please let me know if you manage to find something! I'll start up my search again as well.
-
DocFlex/Javadoc 1.5.6, a multi-format doclet development tool and more
DocFlex/Javadoc is both a multi-format Javadoc Doclet and a rapid doclet development tool, which allows easy creation of professional quality Java API documentation generated by Javadoc in various output formats.
More in this article:
Key Features
Availability
This Version
What is DocFlex?
Main Concepts
Other Applications
Links
KEY FEATURES
Template-driven doclet architecture
- Actual doclets are created in the form of special templates interpreted by the DocFlex Doclet, which is the template interpreter / output generator wrapped in the form of a Javadoc Doclet.
- The high quality graphic Template Designer allows you to visually design most of things, whose development was possible so far only by direct Java coding.
- The templates are designed independently on a particular output format. All formatting is specified in some universal way using properties of template components. During the generation, it is rendered with the suitable features available in the selected output format.
- The elaborated support of template parameters (including multivalued list parameters). The parameters are defined and accessed within templates to adjust dynamic properties of template components. Most of options previously used to control an ordinary doclet now simply become template parameters!
- The possibility to call templates from one another. This feature (along with the template parameters) makes possible re-using the same templates for different tasks as well as organizing template libraries.
Data processing
- The entire Doclet API is represented in the form of a virtual XML document (called Doclet DSM), on which the designing and processing of all templates is based.
- Sophisticated capabilities for data querying and sorting based on an extension of XPath.
- Full support of new Java 5.0 language features: Generic Types, Enums, Annotations.
- Simultaneous support of Java 1.4 and Java 5.
Creating hyperlinks
- Generation of an extensive network of hyperlinks interconnecting the whole documentation.
- The hyperlinks can be generated in all output formats that support them (this currently includes HTML and RTF).
- The universal way of defining documentation cross-links based on the link/target keys specified in templates.
- In RTF, the cross-links can be generated in the form of page number references, which effectively makes them usable even in the printed documentation.
- In HTML, the possibility of loading several frame windows from a single hyperlink at once.
Universal support of various formatting techniques
- text formatting: fonts, colors, borders
- paragraph formatting: margins, pagination control, borders, colors
- border formatting: styles (solid, double, dashed, dotted), thickness, colors
- tables: arbitrary cell layouts, borders, nested tables
- lists: bulleted, numbered, delimited
- document fields (RTF): page number, number of pages, TOC, etc.
- page formatting: size, orientation, margins, headers/footers
- formatting styles
- rendering of embedded HTML, which means interpreting in non-HTML output formats (such as RTF) the HTML tags embedded in text data (e.g. documentation comments). Almost all HTML tags practically usable in doc-comments are supported.
Inserting images
- statically specified in templates
- dynamically, obtained by <img> tags found in Java comments
- supported image formats: GIF, PNG, JPG, WMF, EMF, BMP
Output formats
- HTML (both framed multi-file and single-file output)
- RTF (version 1.6 - supported since Word 2000).
- TXT (plain text), which may be particularly useful for various utilizations of the Java code information provided by the Doclet API generate XML files by it, or SQL files to import into a database).
Standard Template Set
- The ready-to-use Standard Template Set included in all editions of DocFlex/Javadoc allows you to immediately generate:
(*) The framed HTML Java API documentation similar to that generated by the standard Javadoc.
(*) The same documentation packed in a single HTML file.
(*) The unmatched quality RTF JavaDoc.
- Special features supported by standard templates:
(*) Excluding classes/methods/fields by custom tags and annotations.
(*) Selective omitting of package qualifiers.
(*) Selective documenting of custom tags (similar to -tag option of Standard Doclet).
- By modifying the standard templates, you can quickly customize the generated documentation according to your needs.
Doclet GUI
- Besides command line options, DocFlex Doclet supports an alternative user-friendly way to control the template-based doclets interactively -- the high quality Doclet GUI.
- The Doclet GUI starts with the Generator Dialog, where you can specify all general settings (such as the main template, the output format and the output directory), start the generation, track its progress and stop at any moment you need.
- The grid-tree-based Parameter Inspector invoked from the Generator Dialog for a selected template allows you to view the descriptions of all template parameters controlling the doclet and set their values according to the parameter data types.
- The generator options specific for the selected output format can be set in the corresponding Format Option Inspector (also invoked from the Generator Dialog).
- Once the generation is finished (or cancelled), you can start it again with different settings or a new main template without restarting the whole Javadoc.
Integrations
- With any system that runs Javadoc (in particular, see below)
- Apache Ant
- Apache Maven 2
- Eclipse
For lots more information, see DocFlex/Javadoc homepage: [http://www.filigris.com/products/docflex_javadoc/]
AVAILABILITY
DocFlex/Javadoc comes in two editions:
(1) The full edition called "DocFlex/Javadoc" as it is. This is commercial software, which includes all the implemented functionality.
(2) The reduced freeware edition called "DocFlex/Doclet". It includes only the output generator and can be used as an interpretor of any custom templates. It also includes the standard template set, which allows you to instantly use it as an HTML doclet (similar to the standard one, however with some special features) plus an excellent quality RTF doclet.
Both editions are available for downloads on the page: [http://www.filigris.com/downloads/]
THIS VERSION
New features:
- The template interpretor works 15-20% faster
- Improvement of RTF output
- Multi-valued (list) template parameters
- Custom elements
- Standard Templates: Selective documenting of custom tags (similar to -tag option of standard doclet)
For more details, see product Readme | Change Log on the downloads page: [http://www.filigris.com/downloads/]
WHAT IS DOCFLEX?
DocFlex is an innovative technology for development of high quality template-driven documentation/report generators by any kind of data obtained from various software applications via the Java APIs they provide.
MAIN CONCEPTS
The whole DocFlex technology is based on four generalizations:
(1) The mapping of an entire Java API onto a virtual XML-like representation made of some elements and attributes so as to process any such a representation in a universal way using techniques borrowed from the field of XML, like XPath (or more precisely, a conceptual analogue of XPath with some extensions not present in it).
(2) The abstract formatting concept based on four layouts (flow of text, flow of paragraphs or paragraph-like objects, tables and lists), which can be rendered in most modern document formats (e.g. HTML, RTF, XSL-FO etc.)
(3) The automatic generation of hyperlinks (or their page number reference equivalents) by matching the sets of keys produced from certain natural properties of the things (entities) being documented and hyper-linked.
(4) The representation of the object controlling structure of the output generator (made on the first three principles) in the form of a plain-text template with a possibility to create and edit such templates using a graphic Template Designer, which visualizes the controlling objects (now becoming template components) in a form resembling the output they will produce.
OTHER APPLICATIONS
In fact, DocFlex/Javadoc is not the only application of DocFlex technology. The following is a summary of other DocFlex software:
DocFlex/XML
The SDK and runtime environment for rapid development and execution of template-driven automatic documentation/report generators by any data obtained from XML files.
This is currently the most complex and advanced application of DocFlex technology. Actually, this tool can be considered a powerful alternative to XSLT. At least, it is definitely able to do what XSLT apparently not (for example, see XSDDoc below). We will publish a more detailed comparison DocFlex/XML versus XSLT with the next DocFlex/XML release, which is coming very soon.
DocFlex/XML home page: [http://www.filigris.com/products/docflex_xml/]
DocFlex/XML | XSDDoc
A template set for DocFlex/XML that implements a high quality W3C XML Schema documentation generator in HTML and RTF output formats.
For more details, please see: [http://www.filigris.com/products/docflex_xml/xsddoc/]
DocFlex/XML | WSDLDoc
A similar template set for DocFlex/XML that will implement a high-end WSDL documentation generator.
This product is not released yet.
DocFlex/Together
A template-driven documentation generator for [Borland Together|http://www.borland.com/us/products/together/] (which is a UML modeling tool).
This is the earliest application of DocFlex technology and probably the most beautiful one. It works only with Together Architect 1.x, which is now obsolete. Unfortunately, since Together 2005, Borland eliminated any open APIs (for unknown reasons). Because of this, further development of DocFlex/Together was impossible.
DocFlex/Together home page: [http://www.filigris.com/products/docflex_together/]
See also examples of the UML documentation generated with it: [http://www.filigris.com/products/docflex_together/examples/]
The future DocFlex/UML is going to generate something like this as well.
DocFlex/UML
A template-driven UML documentation generator based on [Eclipse EMF|http://www.eclipse.org/emf/]. This tool is in early development stage yet. In a sense, it will continue DocFlex/Together with the focus on integration with other UML tools that use Eclipse EMF.
LINKS
This original article can be found at:
[http://www.filigris.com/ann/docflex_javadoc_v1.5.6/]
DocFlex/Javadoc home page:
[http://www.filigris.com/products/docflex_javadoc/]
DocFlex/XML home page:
[http://www.filigris.com/products/docflex_xml/]
DocFlex/XML | XSDDoc, the XML schema documentation generator:
[http://www.filigris.com/products/docflex_xml/xsddoc/]
Free downloads:
[http://www.filigris.com/downloads/]Now, DocFlex/Javadoc v1.4 has been released specifically dedicated to Linux (Mac OS X) support:
(*) Some early bugs have been fixed, which prevented it working properly under Linux.
(*) A special RTF option was introduced to generate OpenOffice.org friendly RTF (see below)
(*) Improved support for external document viewers.
(*) Now, DocFlex/Javadoc software includes the shell script files prepared to quickly install and launch it under Linux
New RTF option
A new RTF output option "Tune output for MS Word� has been introduced. This option, actually, allows switching off that very tuning (which until now was the default mode) to produce an RTF friendly to open with other non MS Word applications, e.g. OpenOffice.org Writer under Linux.
Read full announcement (and screenshot) by this link:
http://www.filigris.com/ann/docflex_javadoc_v1.4/
Regards,
Leonid Rudy
http://www.docflex.com
Maybe you are looking for
-
Office 2013 Home & Business Edition - None of the application (Word, Powerpoint, Excel or Outlook) is opening, not even in safe mode.. I tried to run the application in compatibility mode by right clicking the excel.exe and choosing the compatibility
-
Problem In R/3 Installation : Dispatcher not coming up
Hi, I'm trying to install SAP R/3 Enterprise ABAP on Windows:Oracle. While creating the Database Instance I chose a Database Schema Name. Further, while creating a Dialog Instance the Database schema name what I gave doesn't match with the previ
-
How do I create a brand new .pat file?
I am attempting to create a set of patterns to share online, and I cannot figure out how to create a truly custom .pat file. I fully understand how to define a pattern in photoshop, however, the only way I've ever known about accessing and permanentl
-
Videos not showing up in Responsive slider on Mac
<blockquote>Locking duplicate thread.<br> Please continue here: [[/questions/927393]]</blockquote> Hello. We have an issue with videos on one of our templates. Videos are just black squares and you can listen only sound. It only happens on Mac (it's
-
Multiple calendar entry replicates
Whenever I try to use iCloud, many of my calendar entries, especially older ones, are replicated, and may be replicated multiple times. For instance, one repeated calendar entry is replicated about 20-25 times on each and every every day. Interesting