2012-03-27 5 views
0


나는 프로젝트에서 6.9 내가 두 번째 프로젝트에서 인터페이스 IBusinessLogic 은 내가 BusienssLogic의 객체를 생성하고 세 번째 프로젝트에서 IBusinessLogic 를 구현하는 클래스 BusinessLogic을 만든 넷빈즈 IDE에서 프로젝트를 생성 IBusinessLogic의 참조에이 개체를 할당하는 것입니다. 쓰는 동안 나는 어떤 오류가 발생하고 있지 않다 그러나 I 깨끗하고이 세 번째 프로젝트를 빌드 할 때 그 아래의 예외를 얻을 :깨끗하고 넷빈즈에 실패 빌드

 
incompatible types 
found : com.abc.businesslogic.BusinessLogic 
required: com.abc.businesslogic.interfaces.IBusinessLogic 
       com.abc.businesslogic.interfaces.IBusinessLogic logic = bl; 
Note: Some input files use or override a deprecated API. 
Note: Recompile with -Xlint:deprecation for details. 
Note: Some input files use unchecked or unsafe operations. 
Note: Recompile with -Xlint:unchecked for details. 
1 error 
D:\ProjectsFeb12\Service\nbproject\build-impl.xml:531: The following error occurred while executing this line: 
D:\ProjectsFeb12\Service\nbproject\build-impl.xml:261: Compile failed; see the compiler error output for details. 
BUILD FAILED (total time: 3 seconds) 

내가이 슈퍼 타입의 참조의 하위 형식의 개체를 다음 할당 할 수 아시다시피 예외는 IDE이어야합니다. 어떻게 해결할 수 있을까요? 모든 코드를 새 프로젝트로 옮겼지만 didnot이 작동했습니다.

은 코드 :

 
package com.abc.workerhandlers; 

import com.abc.businesslogic.BusinessLogic; 
import com.abc.businesslogic.interfaces.IBusinessLogic; 

public class MQ2MQWorker1 { 

    MQ2MQWorker1(){} 

    public void init(){ 

       BusinessLogic bl = new BusinessLogic(); 
       IBusinessLogic logic = bl; // This line is giving problem 
    } 
} 

나는 그것이 완벽하게 실행하는 프로젝트 만 프로젝트의 항아리를 실행

는 dist 디렉토리에 만들어지지 않습니다.

+0

오류가 발생하는됩니다 코드의 조각을 게시 할 수 있습니까? –

+0

'com.abc.businesslogic.BusinessLogic'은'com.abc.businesslogic.interfaces.IBusinessLogic'을 구현합니까? –

+0

@ JimGarrison 확실합니다. – sjain

답변

0

올바른 클래스가 클래스 경로에 있는지 확인하십시오. BTW, 당신이

BusinessLogic bl = new BusinessLogic(); 
IBusinessLogic logic = bl; // This line is giving problem 

하지만 쓰기는 안 대신 IBUsinessLogic logic = new BusinessLogic();