Hello Linus,
Maybe I'm missing something obvious - I used the build batch in the
location you described using these exact commands:
svn checkout
http://argouml.tigris.org/svn/argouml/releases/VERSION_0_30/ argouml
--username guest
cd argouml
build
build.bat update-argouml.jar-manifest
The first build target worked fine, creating a project in
"argouml\src\argouml-build\build".
However the second target gave a different build error this time
(censored the file paths outside the SVN checkout):
BUILD FAILED
....\argouml\build.xml:74: .....\argouml\build not found.
It looks like this doesn't have the right configuration for this folder.
I tried adding a "build" folder in the "argouml" root which didn't do
anything, just created a 1 KB jar file in the new folder. However
changing line 12 (the build.dir value) from:
<property name="build.dir" value="build"/>
to :
<property name="build.dir" value="src/argouml-build/build"/>
Made it change the argouml jar, though the built project still doesn't
work correctly. Was this a mistake in the makefile, or could I have
built it properly with another method?
-Nathaniel Kofalt
On 5/6/2010 12:12 AM, Linus Tolke Tigris wrote:
> Hello Nathaniel!
>
> It is in on the "top" level, i.e. the integration level where the
> separate modules are integrated. You can find it here:
> http://argouml.tigris.org/source/browse/argouml/trunk/build.xml?annotate=17806#id64
> http://argouml.tigris.org/source/browse/argouml/releases/VERSION_0_28_1/build.xml?annotate=17806#id64
> or
> http://argouml.tigris.org/source/browse/argouml/releases/VERSION_0_30/build.xml?annotate=17806#id64
> respectively. That means two levels up from the build.xml in the
> argouml-build directory.
>
> /Linus
>
>
> On Thu, May 6, 2010 at 12:01 AM, Nathaniel Kofalt <[email protected]
> <mailto:[email protected]>> wrote:
>
> Hello Linus, thank you for your reply!
> Sorry I took awhile to get back to you. Your explanation makes
> sense, but when attempting your method on VERSION_0_28_1 or the
> newer VERSION_0_30 checkouts, I get the following error when
> running that last target:
>
> Target "update-argouml.jar-manifest" does not exist in the project
> "argouml".
>
> I tried this in the argouml\src\argouml-build and a few other
> locations, as there seems to be a lot of build scripts lying
> around that call each other. Where exactly did you run this target?
>
> Nathaniel Kofalt
>
>
>
> On 4/29/2010 4:48 PM, Linus Tolke Tigris wrote:
>> Hello Nathaniel!
>>
>> You have found a weakness in the loading mechanism and that is
>> that it relies on all the fact that all diagrams to be loaded are
>> on the class path. When you build as you describe the argouml.jar
>> is created without including them in the Class-Path:-entry in the
>> manifest.
>>
>> To fix, you can use the same function that we use when doing
>> releases.
>>
>> Build like this:
>> svn checkout
>> http://argouml.tigris.org/svn/argouml/releases/VERSION_0_28_1/
>> <http://argouml.tigris.org/svn/argouml/releases/VERSION_0_28_1/src>
>> argouml
>> Apply the diff
>> Build with "./build.sh install" or "build.bat install"
>> (in the argouml directory).
>> Newly-built project appears in "argouml\build"
>> Include the modules on the class path in the argouml.jar
>> using "./build.sh update-argouml.jar-manifest" or "build.bat
>> update-argouml.jar-manifest".
>>
>> The update-argouml.jar-manifest target adds all available modules
>> to the class path. When doing releases, all modules are first
>> built, ending up in argouml\build\ext and then the
>> update-argouml.jar-manifest target is run to create the
>> argouml.jar that is distributed. This magic is located in
>> build.xml on the top level, a file that you didn't see when just
>> checking out src and tools.
>>
>> To conclude, the problem is not with running in batch mode or
>> commands. It is in the way you start argouml without the correct
>> class path.
>>
>> If you don't want to use this magic you could set the classpath
>> explicitly to java or edit the manifest file in the argouml.jar
>> file you have created and add ext/argouml-diagrams-sequence.jar
>> to the Class-Path: entry.
>>
>> /Linus
>>
>>
>>
>> On Mon, Apr 26, 2010 at 8:17 AM, Nathaniel Kofalt
>> <[email protected] <mailto:[email protected]>> wrote:
>>
>> Hello all!
>>
>> We use a custom ArgoUML build (currently of 0.28.1) -
>> essentially
>> just a minor change by "thn" (revision 17025, see link below)
>> that makes
>> it possible to save all graphics from the command-line.
>> Combined with a
>> simple commit script, and now we have a SVN repository of ArgoUML
>> projects that automatically generate pictures of themselves
>> into a
>> folder, which gets served over Apache. This allows us to have a
>> browser-viewable set of images always showing the latest
>> revision of the
>> UML. This is very convenient for our team, and our main
>> reason for using
>> ArgoUML.
>>
>> The command we use is pretty vanilla, just open the
>> project and
>> export all in batch mode (put in your own locations at the
>> ... marks):
>> java -jar ...argouml.jar -batch -command
>> "org.argouml.uml.ui.ActionOpenProject=....example.zargo" -command
>> "org.argouml.uml.ui.ActionSaveAllGraphics=..../exampleEmptyFolder"
>>
>> And this works perfectly in most cases. However, any
>> project with a
>> Sequence diagram causes this exception:
>> org.argouml.persistence.OpenException:
>> java.lang.ClassNotFoundException:
>> org.argouml.sequence2.diagram.UMLSequenceDiagram
>> (plus a lengthy stack traced, attached to this email).
>>
>> Replicating this error is pretty easy:
>> svn checkout
>> http://argouml.tigris.org/svn/argouml/releases/VERSION_0_28_1/src
>> argouml/src --username guest
>> svn checkout
>> http://argouml.tigris.org/svn/argouml/releases/VERSION_0_28_1/tools
>> argouml/tools --username guest
>> Apply the diff linked below (one file), easy enough
>> to do manually
>> Build project with
>> "argouml\src\argouml-build\build.sh" or
>> similar "build.bat"
>> Newly-built project appears in
>> "argouml\src\argouml-build\build"
>> Use the java command above on any ArgoUML project
>> without a
>> Sequence diagram to see it generate PNG images for each diagram
>> Use the java command above on any ArgoUML project with a
>> Sequence diagram to see it fail
>>
>> The diff link:
>>
>> http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/ui/ActionSaveAllGraphics.java?view=diff&r1=17024&r2=17025&pathrev=17025&diff_format=l
>>
>> <http://argouml.tigris.org/source/browse/argouml/trunk/src/argouml-app/src/org/argouml/uml/ui/ActionSaveAllGraphics.java?view=diff&r1=17024&r2=17025&pathrev=17025&diff_format=l>
>>
>> This seems strange, since presumably the only difference
>> from the
>> official releases is that tiny feature added (like 30 lines).
>> To confuse
>> matters, the class source it can't find
>> (org.argouml.sequence2.diagram.UMLSequenceDiagram) clearly
>> exists in the
>> checkouts we build from (in the
>>
>> "argouml\src\argouml-core-diagrams-sequence2\src\org\argouml\sequence2\diagram"
>> folder).
>>
>> For convenience I also attached the exact modified file,
>>
>> "argouml\src\argouml-app\src\org\argouml\uml\ui\ActionSaveAllGraphics.java"
>> so you don't have to apply the diff manually. I am familiar
>> with Java,
>> but I'm confused since opening the project in GUI mode
>> produces the same
>> error, yet in the official builds I can open the project just
>> fine. Am I
>> doing some portion of the build process wrong?
>>
>> Any help is appreciated!
>>
>> Nathaniel Kofalt
>>
>> ------------------------------------------------------
>>
>> http://argouml.tigris.org/ds/viewMessage.do?dsForumId=449&dsMessageId=2595638
>>
>> <http://argouml.tigris.org/ds/viewMessage.do?dsForumId=449&dsMessageId=2595638>
>>
>> To unsubscribe from this discussion, e-mail:
>> [[email protected]
>> <mailto:[email protected]>].
>>
>>
>
>
------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=449&dsMessageId=2604095
To unsubscribe from this discussion, e-mail:
[[email protected]].