Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

11991 Posts in 1587 Topics- by 3509 Members - Latest Member: lioneltenel

26. May 2012, 08:11:30 pm
Xith3D CommunityGeneral CategoryGeneral Discussion (Moderators: Marvin Fröhlich, 'n ddrylliog)Packaging Xith3D apps easily && Making a "ready-to-use" release of Xith3D
Pages: [1]
Print
Author Topic: Packaging Xith3D apps easily && Making a "ready-to-use" release of Xith3D  (Read 1981 times)
Mathias 'cylab' Henze
Fierce Warrior
****
Offline Offline

Posts: 540

1064620
View Profile WWW
« on: 07. March 2007, 02:45:15 pm »

Quote
- An out-of-the-box deployment system for Xith3D apps (compiles latest Xith3D+Xith-tk+Any libs you use, including natives from latest SVN directly in Eclipse)
That's what ant is for. Also users should not directly build from CVS once 1.0 is out.
Logged

Mathias 'cylab' Henze
Fierce Warrior
****
Offline Offline

Posts: 540

1064620
View Profile WWW
« Reply #1 on: 07. March 2007, 02:49:45 pm »

Quote
EDIT : I realize this messages sounded like I didn't wanted to do that. That's wrong Smiley I'll make a small test today with springs and cosntraint (basic idea : you have "points" connected by "springs" and additionnally some points can be "fixed").
Yeah, the points are the vertices of the terrain grid and the springs are setup with the edge length of the actual triangles. The "fixed" points are the edge of the terrain. The system needs to be 2D, meaning producing a flat mesh in the end and I don't need any animation, just the result, when the spring forces are balanced out.
Logged

'n ddrylliog
Moderator
Guru
*****
Offline Offline

Posts: 1188



View Profile WWW Email
« Reply #2 on: 07. March 2007, 03:26:24 pm »

Quote
- An out-of-the-box deployment system for Xith3D apps (compiles latest Xith3D+Xith-tk+Any libs you use, including natives from latest SVN directly in Eclipse)
That's what ant is for. Also users should not directly build from CVS once 1.0 is out.

Man, the problem with ant is that you have to write your own build files. I worked with "make" when I was still coding in C++, ant seems bloated for what is needed, and Eclipse export wizard sucks. So I'm just making a small "oneclick" util with a Swing GUI re-using Eclipse .classpath files and all.
Also, there will be an AppLauncher class which extracts the natives and libs to the right directories then adjust the System properties automatically.

Quote
EDIT : I realize this messages sounded like I didn't wanted to do that. That's wrong Smiley I'll make a small test today with springs and cosntraint (basic idea : you have "points" connected by "springs" and additionnally some points can be "fixed").
Yeah, the points are the vertices of the terrain grid and the springs are setup with the edge length of the actual triangles. The "fixed" points are the edge of the terrain. The system needs to be 2D, meaning producing a flat mesh in the end and I don't need any animation, just the result, when the spring forces are balanced out.
Yeah, yeah in fact I guessed that from your first post, just wanted to be sure.
Logged
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #3 on: 07. March 2007, 03:34:58 pm »

Man, the problem with ant is that you have to write your own build files. I worked with "make" when I was still coding in C++, ant seems bloated for what is needed, and Eclipse export wizard sucks. So I'm just making a small "oneclick" util with a Swing GUI re-using Eclipse .classpath files and all.
Also, there will be an AppLauncher class which extracts the natives and libs to the right directories then adjust the System properties automatically.

I've used make systems that were capable of creating/dropping database tables or entire schemas as well as just about any other system maintenance task possible.  They were horrid, especially compared to Ant implementations.  My disagreements with your opinion of Ant aside, Ant gives us access to a lot of useful utilities like Maven that would benefit the project.  Wouldn't you rather spend your time making something work that provides long term benefits rather than working on a one-off that will hopefully be discarded when we do get an Ant build?  I recall somebody saying they plan to write the build.xml for us.  Writing your own GUI build system seems like an utter waste of time.
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
'n ddrylliog
Moderator
Guru
*****
Offline Offline

Posts: 1188



View Profile WWW Email
« Reply #4 on: 07. March 2007, 03:50:29 pm »

Man, I create something to launch easily MY xith apps. I'll open-source it (sourceforge why not). Never will it compile libs like Xith3D. If I ever have a really complex project I'll certainly use Ant/Maven. But if I suddenly want to code 14 mini-games I'll be glad to have only a one-click build process.. Nobody's obliged to use it Smiley And, considering the issues I've been encoutering with java apps deployment (including those with natives libs) if I can solve it all with this tool, I don't consider it as a waste of time. Remember, Ant builds but it doesn't solve the "executable jar with other jars and natives" problem. And you have to create your build file.
Logged
'n ddrylliog
Moderator
Guru
*****
Offline Offline

Posts: 1188



View Profile WWW Email
« Reply #5 on: 07. March 2007, 03:51:31 pm »

In fact it's not a build system, it's a packaging system..
Logged
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #6 on: 07. March 2007, 03:57:16 pm »

Man, I create something to launch easily MY xith apps.

I guess I missed that.

I'll open-source it (sourceforge why not).

Because it forces people to search through thousands of projects that are useful to their author but not generally useful unless you have an identical need.  Of the 150,000 (they are up to that many now, right?) projects at SF, I only like 3-400 and can only see how anybody would like 3-4000.  So, that's a lot of useless projects to weed through to keep abreast of the project gems.

Maven + Ant + JUnit/HttpUnit will do everything you described there and more.
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
'n ddrylliog
Moderator
Guru
*****
Offline Offline

Posts: 1188



View Profile WWW Email
« Reply #7 on: 07. March 2007, 04:05:19 pm »

Man, I create something to launch easily MY xith apps.

I guess I missed that.

I'll open-source it (sourceforge why not).

Because it forces people to search through thousands of projects that are useful to their author but not generally useful unless you have an identical need.  Of the 150,000 (they are up to that many now, right?) projects at SF, I only like 3-400 and can only see how anybody would like 3-4000.  So, that's a lot of useless projects to weed through to keep abreast of the project gems.

Maven + Ant + JUnit/HttpUnit will do everything you described there and more.
Alright, I won't create a sourceforge project. In fact you're right, it's too small to be a sf project. I'll just maybe make it available on Xith.org.
But you know, I think there are guys out there which have talent. They have video games ideas and a bit of logic. They could learn Java if we gave them good tutorials. They could even learn Xith3D. And get used to Blender.. and then suddenly you would have a game. Small game, good game.. That guy would be probably happy to know that there's a tool out there which is lightweight and free you from the hassle of deploying successfully a Java app...
You're probably working on big projects, this doesn't concern you Smiley
Logged
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #8 on: 07. March 2007, 04:14:19 pm »

Alright, I won't create a sourceforge project. In fact you're right, it's too small to be a sf project. I'll just maybe make it available on Xith.org.
But you know, I think there are guys out there which have talent. They have video games ideas and a bit of logic. They could learn Java if we gave them good tutorials. They could even learn Xith3D. And get used to Blender.. and then suddenly you would have a game. Small game, good game.. That guy would be probably happy to know that there's a tool out there which is lightweight and free you from the hassle of deploying successfully a Java app...
You're probably working on big projects, this doesn't concern you Smiley

Now creating a xith-quickstart project... that's an idea!  It could include a bunch of tutorials, easy builds, sample games, etc. for exactly the people you describe.  I think that's a great idea!  One random DoMyThing.java just adds clutter to the O/S project universe.  One collection of useful docs + tutorials + builds + samples + tests is genius... well maybe not genius but really useful Smiley

That project would be a great place to store all the tutorials and pre-build JavaDocs as well.  We could even store the binary builds there.  In that way, people would get everything they could possibly need to get quickly running from one svn co operation or one mega-zip file that we create by doing svn co from that project.

You're right, I am working with larger projects integrating lots of different technologies so a quickie restricted environment is not of use to me personally; however, it would have been great when I first joined the project and was just playing around to see if this was technology I wanted to use.
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
Mathias 'cylab' Henze
Fierce Warrior
****
Offline Offline

Posts: 540

1064620
View Profile WWW
« Reply #9 on: 07. March 2007, 04:19:16 pm »

That project would be a great place to store all the tutorials and pre-build JavaDocs as well.  We could even store the binary builds there.  In that way, people would get everything they could possibly need to get quickly running from one svn co operation or one mega-zip file that we create by doing svn co from that project.
Hmm, isn't that called a release Wink
Logged

'n ddrylliog
Moderator
Guru
*****
Offline Offline

Posts: 1188



View Profile WWW Email
« Reply #10 on: 07. March 2007, 04:19:44 pm »

Hmm.. I had to read the post twice to realize it was not ironic (was it ?)

One random DoMyThing.java just adds clutter to the O/S project universe.
Please develop.
Logged
'n ddrylliog
Moderator
Guru
*****
Offline Offline

Posts: 1188



View Profile WWW Email
« Reply #11 on: 07. March 2007, 04:20:47 pm »

That project would be a great place to store all the tutorials and pre-build JavaDocs as well.  We could even store the binary builds there.  In that way, people would get everything they could possibly need to get quickly running from one svn co operation or one mega-zip file that we create by doing svn co from that project.
Hmm, isn't that called a release Wink
Not exactly. Xith3D releases aren't precisely "read-to-use".. you have to do some fiddling with natives + jars and remove what you don't need.
Additionnally, horati talks about a "project", which is updated via SVN. Not a "build"/"release" you download..
Logged
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #12 on: 07. March 2007, 04:27:43 pm »

Hmm, isn't that called a release Wink
Not exactly. Xith3D releases aren't precisely "read-to-use".. you have to do some fiddling with natives + jars and remove what you don't need.
Additionnally, horati talks about a "project", which is updated via SVN. Not a "build"/"release" you download..

Ideally, it would be a realease; however, as Amos points out, X3D is complex enough and involves enough different technologies that it isn't completely ready to use with a simple download.  Having one (or one per OS) quickstart download that includes EVERYTHING (tests, tutorials, samples, natives, IDE project files and various quick build tools, Javadocs, dependent jars, etc.) all for the correct and tested versions of everything involved would be great.

It'd be a real step forward in project maturity toward 1.0 that would separate us from the crowd of projects who say, "We released, now good luck getting it to work."  I also like the idea that it separates at least part of the task so that Marvin doesn't have to do it all.  His time is better spent writing code and fixing bugs.  Any one of us should be able to produce a version to commit to this quickstart project.  In fact, we would probably develop scripts over time until it was a completely automated process that could be triggered by Maven... the best approach Smiley
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
Mathias 'cylab' Henze
Fierce Warrior
****
Offline Offline

Posts: 540

1064620
View Profile WWW
« Reply #13 on: 07. March 2007, 04:42:45 pm »

This kind of things should be in the ant script.
There is already an (empty Wink) "release"  target in the ant script. The releases should maybe be generated per platform, so a user would just pick his latform and start coding. Generation of project templates for eclipse or ant-builds would also be nice. Prefered deployment strategy for user-apps should be java webstart and we should provide a JWS extension library like JOGL to easy this task. I guess I will have to fill that in soon...

[Edit: this is getting really off topic, so if we want to discuss this further, please create a new topic]
Logged

Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic