Hello again Nathaniel!

I didn't notice that you patched also to control the type of the files (in
this thread this is your first mention of it ;-). Please make sure you send
the patch to someone that can commit it for upcoming releases.

The instructions on how to make releases are in the wiki
http://argouml.tigris.org/wiki/Making_a_release. I don't think they are
really appropriate for what you want to do. Perhaps you could try the
following (to build the 0.30.1 release):
svn co
http://argoumlinstaller.tigris.org/svn/argoumlinstaller/releases/VERSION_0_30_1argoumlinstaller
cd argoumlinstaller
./build-release.sh -c
0.30.1
<Wait for the checkout>
<Apply the patch in build/VERSION_0_30_1>
./build-release.sh -b
<Get the entire tree of jar files from build/VERSION_0_30_1/argouml/build
and use that>.

But to do this you will need cygwin. There is no build-release.bat script.

        /Linus


On Thu, May 6, 2010 at 5:43 PM, Nathaniel Kofalt <[email protected]> wrote:

>  Ugh, I didn't see the install target. Thanks for your patience.
>
> You are correct - builds now work correctly (other than the 0.30 can't open
> 0.28.1 projects issue). Since I only have a few UML projects for my team, I
> can upgrade each file manually, since that'd probably be less work than
> re-creating the rest of your build environment.
>
> Is there a way to upgrade the file version of .zargo project files? I tried
> opening and using "save-as" with the Web Start version, but that didn't seem
> to do it.
>
> Alternatively, are there complete build instructions anywhere? I remember
> creating my initial instructions for 0.28.1 from somewhere on the website,
> but couldn't find it again. I've been bumbling through these recent steps,
> but it may be easier if I was following the same way the official releases
> are built.
>
> It's almost tragic, seeing that as of 0.30 (since mass-export from command
> line was implemented via this 
> diff<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>)
> my custom build only changes two lines in
> "\src\argouml-app\src\org\argouml\uml\ui\SaveGraphicsManager.java" to set
> SVG images as the default, rather than PNG, since there's no way (as of my
> old instructions form 0.28.1) to set the image type on a mass-export from
> the command line. If, since then, somebody has implemented that ability, I
> could use that and not go through these compiling problems at all.
>
> -Nathaniel Kofalt
>
>
>
> On 5/6/2010 10:15 AM, Linus Tolke Tigris wrote:
>
> Moved to the dev list.
>
>  I guess that this is because of a combination of events:
> * we moved the Java-specific parts to a separate subproject between 0.28.1
> and 0.30
> * The old project requires Java-specific parts.
> * You build without the Java project. All official builds are done with the
> Java project included.
>
>           /Linus
>
> On Thu, May 6, 2010 at 12:17 PM, Nathaniel Kofalt <[email protected]>wrote:
>
>>  A quick clarification:
>>
>> If I checkout VERSION_0_28_1, change line 12 of the "argouml/build.xml"
>> file as I mentioned, then run "build" and "build
>> update-argouml.jar-manifest" the resultant build can correctly open projects
>> with sequence diagrams! That's good.
>>
>> However, if I checkout VERSION_0_30, change the build file, and run
>> "build" and "build update-argouml.jar-manifest" the newer build cannot open
>> any projects created with the older ArgoUML version, failing with a
>> org.xml.sax.SAXException: Plugin profile "Java" is not available in
>> installation
>> error. Attached is the trace it provided, and the exact commands I used to
>> build.
>>
>> Meanwhile, the Web Start of 0.30 from the official website can correctly
>> open these projects made by an older version of the program. So the problem
>> I'm experiencing now may be a different problem.
>>
>> -Nathaniel Kofalt
>>
>>
>>
>> On 5/6/2010 4:38 AM, Nathaniel Kofalt wrote:
>>
>> 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]>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]>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
>>>>
>>>>     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
>>>>
>>>> To unsubscribe from this discussion, e-mail: [
>>>> [email protected]].
>>>
>>>
>>>
>>>
>>
>
>

------------------------------------------------------
http://argouml.tigris.org/ds/viewMessage.do?dsForumId=450&dsMessageId=2604521

To unsubscribe from this discussion, e-mail: 
[[email protected]].
To be allowed to post to the list contact the mailing list moderator, email: 
[[email protected]]

Reply via email to