Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #22987

Re: help: class conflict in two different version JAR files

Newsgroups comp.lang.java.programmer
Date 2013-03-20 12:14 -0700
References <3ef61613-19c4-42d5-a9bb-82c2d9b4b8cd@googlegroups.com>
Message-ID <4ccc8333-ce6f-41ab-ab37-dc45c6d93a80@googlegroups.com> (permalink)
Subject Re: help: class conflict in two different version JAR files
From Lew <lewbloch@gmail.com>

Show all headers | View raw


zyng wrote:
> I am using Eclipse. Project A uses 3rdparty.1.0.1.jar file; Project B uses 3rdparty.1.0.3.jar file. 
> Project B depends on Project A.

Advice #1: Build your project using Ant and command-line tools. That will help you understand 
what Eclipse is doing.

> I am working on Project B. I am not supposed to change anything in Project A. I hope that the code in 

Ideally Project A will come to Project B as a JAR, e.g., "projectA.jar".

> B always use the class inside 3rdparty.1.0.3.jar. I don't know how to do that. I found that for the 

This is not really the way to look at it. One moment ...

> classes in 3rdpartyxx.jar, the code in B just use the class in 3rdparty.1.0.1.jar file, which is used by A. 

That is because both JARs are in your classpath.


>I guess since B depends on A, so 3rdparty.1.0.1.jar file has the higher priority. 

That is not correct.

It is because "3rdparty.1.0.1.jar" is ahead of "3rdparty.1.0.3.jar" in the classpath.

Just remove "3rdparty.1.0.1.jar" from the classpath.

> This causes some problem, which I just omit here.

Problems that the Project B cannot compile because it uses a newer version of "3rdparty".

But of course.

Unless "3rdparty" really screwed up backwards compatibility, remove the old version from 
the classpath.

Otherwise, put Project A after "3rdparty.1.0.3.jar" in your classpath for Project B.

> If running by ANT on the command line, due to the way I set up(project A's code listed near the end 
> of the Java classpath), the code in B uses the classes in 3rdparty.1.0.3.jar and the problem was avoided.

Read up on classpaths.

> I hope to solve the problem in Eclipse. Thank you for your help.

Have Eclipse use the Ant build.xml.

-- 
Lew

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

help: class conflict in two different version JAR files zyng <xsli2@yahoo.com> - 2013-03-20 07:34 -0700
  Re: help: class conflict in two different version JAR files zyng <xsli2@yahoo.com> - 2013-03-20 07:50 -0700
    Re: help: class conflict in two different version JAR files Lew <lewbloch@gmail.com> - 2013-03-20 12:16 -0700
  Re: help: class conflict in two different version JAR files Lew <lewbloch@gmail.com> - 2013-03-20 12:14 -0700
  Re: help: class conflict in two different version JAR files Arne Vajhøj <arne@vajhoej.dk> - 2013-03-20 22:11 -0400
  Re: help: class conflict in two different version JAR files Roedy Green <see_website@mindprod.com.invalid> - 2013-03-20 20:32 -0700

csiph-web