Hi guys,
I'm developing two projects A and B. Project A depends on B, and B
depends on some 3rd libs. The dependency definition in the ivy file of
project A is:
<dependency org="..." name="B" rev="..."
conf="compile->master,test,compile" changing="true"/>
Now I'm adding some new features to B and test these features with
testcases in project A. Every time when I test the modified source codes
of B, I have to do the following things:
1. run the build.xml of B, to publish jar file of B to repository;
2. resolve the ivy file of A to refresh the jar file of B;
3. run the testcase to verify or debug the modification.
For frequent modification of B, the test process becomes very
time-consuming. So my solution is:
Step 1: Comment out the dependency to B in ivy.xml of A;
Step 2: Add project B in A's build path(in Eclipse);
Step 3: Copy all dependencies of B to ivy.xml of A;
Step 4: When all features are tested, recover all the modification in
ivy file to origin state.
But this solution has a big problem. If some colleagues unintentionally
commit these temporary ivy files into svn, they will replace the right
ivy files when other colleagues update their codes and eventually lead
some underlying errors.
So if there is a better solution to this problem?
Thanks a lot!