First
you should promote somebody to be "librarian" and you should use some kind
of source control system. I would then go for a manual or partly manual approach
combined with programming/project rules.
1.
manual approach
a
simple tipp from "the elements of java style"
a
small booklet that I can really recommend:
include the version in the package name, com.dsf.util.v1
com.dsf.util.v2
several versions of a package can thus coexist on a
server
the
drawback is you have to modify your code if you want to use a new version of a
package
but
the control you gain (you choose when to update to a new version) will save you
much more time
than
you will spend on changing the files
you
can't check for dependencies with this approach (on the other hand it won't
be necessary)
also
if you change the model/database this won't always work
2.
partly manual approach
from
my C-programming days I would recommend using a makefile (or ant) to
manage the dependencies on a project level
each
project should contain a file that is updated every time new version of the
project is produced
say
classes in project2 and project3 depends on classes in project1 and project3
depends on project2
project1\version.txt
project1\class1a.java
project1\class1b.java
project2\version.txt
project2\class2a.java
project2\class2b.java
project3\version.txt
project3\class3a.java
project3\class3b.java
create a makefile check.mak
project3: project1\version.txt
project2\version.txt
echo "redeploy project3"
project2:
project1\version.txt
echo "redeploy
project2"
if you want to know what to do when project1
changes do the following
touch project1\version.txt
make check.mak
it should then display
redeploy project2
redeploy project3
regards,
kim
--------Urspr�ngliche Nachricht-----
Von: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED]
Gesendet: Donnerstag, 6. M�rz 2003 15:40
An: jdjlist
Betreff: [jdjlist] Package Dependency Tracking--- You are currently subscribed to jdjlist as: [EMAIL PROTECTED] To unsubscribe send a blank email to [EMAIL PROTECTED] http://www.sys-con.com/fusetalkHi guys,I am working on a system which is composed of several products - that we handle as projects. Some of them are already in production and other ones are being delivered over time.As it is a J2EE application, we are putting the projects in modules and publishing them as they come. The problem is that sometimes we have updates in utility jars and this can lead the entire system to stop working properly - including old production products. We know that we should manage the dependencies between the packages, so we can predict and test any changes in a dependecy chain. The problem is that as the system grows, this task is becoming very difficult.So, my question is, does anyone know about some tool for tracking dependency among packages (jar files)? (I think that tracking the jar is better because it reduces the number of artefacts to track and it will be the deployer�s task to ask everyone to test the affected products).Is there a better approach for tracking these changes? I suppose this is a pretty common issue in large projetcs.TIA,Tedi
You are currently subscribed to jdjlist as: [EMAIL PROTECTED]
To unsubscribe send a blank email to [EMAIL PROTECTED]
http://www.sys-con.com/fusetalk
