RCP 등에서 .mf 파일로 다른 프로젝트 익스포트 포함시 라이브러리(메소드)를 찾지 못할 때,

Eclipse RCP - cant resolve importing libraries in final build

I try to build/export Eclipse RCP product. I have several JAR libraries (not external JARs but they are inside project root folder). I am able to launch application/product in Eclipse environment but i cannot export it as Plug-in Development/Eclipse product. There is no error during exporting but when i try to run my application .exe file the error occurs:

"An error has occurred. See the log file:
C://...configuration/123123.log"

Inside log there is:

    !SESSION 2015-12-18 08:50:22.759 -----------------------------------------------
eclipse.buildId=unknown
java.version=1.8.0_60
java.vendor=Oracle Corporation
BootLoader constants: OS=win32, ARCH=x86, WS=win32, NL=pl_PL
Command-line arguments:  -os win32 -ws win32 -arch x86

!ENTRY org.eclipse.osgi 4 0 2015-12-18 08:50:23.284
!MESSAGE Application error
!STACK 1
java.lang.Error: Unresolved compilation problems: 
    The import com.amazonservices cannot be resolved
    MarketplaceWebServiceOrdersConfig cannot be resolved to a type
    MarketplaceWebServiceOrdersConfig cannot be resolved to a type

    at smoothflow.Application.<init>(Application.java:9)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
    at java.lang.reflect.Constructor.newInstance(Unknown Source)
    at java.lang.Class.newInstance(Unknown Source)
    at org.eclipse.core.internal.registry.osgi.RegistryStrategyOSGI.createExecutableExtension(RegistryStrategyOSGI.java:184)
    at org.eclipse.core.internal.registry.ExtensionRegistry.createExecutableExtension(ExtensionRegistry.java:905)
    at org.eclipse.core.internal.registry.ConfigurationElement.createExecutableExtension(ConfigurationElement.java:243)
    at org.eclipse.core.internal.registry.ConfigurationElementHandle.createExecutableExtension(ConfigurationElementHandle.java:55)
    at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:191)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:134)
    at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:380)
    at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:235)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:669)
    at org.eclipse.equinox.launcher.Main.basicRun(Main.java:608)
    at org.eclipse.equinox.launcher.Main.run(Main.java:1515)

!ENTRY org.eclipse.ui 4 0 2015-12-18 08:50:23.309
!MESSAGE FrameworkEvent ERROR
!STACK 0
java.lang.IllegalStateException: BundleContext is no longer valid
    at org.eclipse.osgi.internal.framework.BundleContextImpl.checkValid(BundleContextImpl.java:983)
    at org.eclipse.osgi.internal.framework.BundleContextImpl.removeBundleListener(BundleContextImpl.java:334)
    at org.eclipse.ui.plugin.AbstractUIPlugin17072.bundleChanged(AbstractUIPlugin.java:620)
    at org.eclipse.osgi.internal.framework.BundleContextImpl.dispatchEvent(BundleContextImpl.java:902)
    at org.eclipse.osgi.framework.eventmgr.EventManager.dispatchEvent(EventManager.java:230)
    at org.eclipse.osgi.framework.eventmgr.EventManager$EventThread.run(EventManager.java:340)

EDIT: ok i see that when i export project to .exe, logs.zip file is created. Inside this log there are tons of errors.

Those errors looks like missing JAR: The import XXX cannot be resolved XXX - package that is inside JAR library 1. ERROR in

C:\Users\X\workspaceRPC\SmoothFlow\src\app\amazonCalls\BaseAmazonCall.java (at line 3)
        import com.amazonservices.mws.orders._2013_09_01.MarketplaceWebServiceOrdersAsyncClient;
               ^^^^^^^^^^^^^^^^^^
    The import com.amazonservices cannot be resolved

EDIT: Greg thank you for Your help, i have added in build.properties all the JARs but the problem still exists (the same errors). My build.properties looks like:

source.. = src/
output.. = bin/
bin.includes = plugin.xml,\
               META-INF/,\
               .,\   <= 이거 중요!!!
               lib/,\
               lib/FastInfoset.jar,\
               lib/MWSClientJavaRuntime-1.0.jar,\
               lib/MWSOrders_2013-09-01_v2015-09-24.jar,\
               ...
jars.compile.order = .,\

[answer]

As well as listing the Jars in the MANIFEST.MF (shown on the Runtime tab in the editor) you must also list the jars in the 'build.properties' file. This is shown on the 'Build' tab of the MANIFEST.MF/plugin.xml/build.properties editor.

An example:

Build properties

In this example I have three jars in a 'lib' directory included in the build.

The build.properties file itself will look like:

경축! 아무것도 안하여 에스천사게임즈가 새로운 모습으로 재오픈 하였습니다.
어린이용이며, 설치가 필요없는 브라우저 게임입니다.
https://s1004games.com

source.. = src/
output.. = bin/
bin.includes = META-INF/,\
               .,\
               plugin.properties,\
               plugin.xml,\
               about.html,\
               about_files/,\
               lib/,\
               lib/jogg-0.0.7.jar,\
               lib/jorbis-0.0.15.jar,\
               lib/vorbisspi1.0.2.jar,\
               icons/

Everything you want included in the plugin must be listed in the build.properties.

 

.MF 파일에서 점 추가 (add dot):자기 자신의 디렉토리가 중요

[출처] https://stackoverflow.com/questions/34350879/eclipse-rcp-cant-resolve-importing-libraries-in-final-build

 

 

 

 

 

본 웹사이트는 광고를 포함하고 있습니다.
광고 클릭에서 발생하는 수익금은 모두 웹사이트 서버의 유지 및 관리, 그리고 기술 콘텐츠 향상을 위해 쓰여집니다.
번호 제목 글쓴이 날짜 조회 수
101 Java Byte Array to InputStream 졸리운_곰 2019.10.24 176
100 [JAXB] JAXB Annotation 설명~ Part. 2 졸리운_곰 2019.10.24 305
99 [JAXB] JAXB Annotation 설명~ Part. 1 졸리운_곰 2019.10.24 136
98 JAXB (3) - marshal, unmarshal에 대해 알아보자. file 졸리운_곰 2019.10.24 142
97 JAXB (2) - XML Schema를 Java Interfaces & Classes로 Binding Compile 하기 file 졸리운_곰 2019.10.24 144
96 JAXB (1) - JAXB 란? file 졸리운_곰 2019.10.24 188
95 XStream으로 자바 객체를 XML로 직렬화하기 file 졸리운_곰 2019.10.15 249
94 [번역] XStream 배우기 : 2분만에 배우는 XStream 졸리운_곰 2019.10.15 232
93 java XML Parser 정리 졸리운_곰 2019.10.05 175
92 [JPA] 쿼리메서드 : 쿼리 연습 조회(findBy..) , 페이징처리 졸리운_곰 2019.03.24 1776
91 스프링 데이터 JPA 레퍼런스 번역 file 졸리운_곰 2019.03.24 1142
90 JPA 개념, class05 JPA 환경설정 졸리운_곰 2019.03.24 209
89 [자바코드] 고유값인 UUID, GUID 생성하기 졸리운_곰 2019.02.27 377
88 [JPA] 복합키 졸리운_곰 2019.02.26 200
87 jpa muli row select result is same row repeat Java 자바 Jpa에서 멀티 로우 반환시 같은값이 반복 file 졸리운_곰 2019.01.01 297
86 [자바] 리스트를 순회하는 방법 졸리운_곰 2018.12.31 277
85 SpringBoot JPA 예제 졸리운_곰 2018.12.31 230
84 SpringBoot JPA 예제(1:N, 양방향) 졸리운_곰 2018.12.31 187
83 SpringBoot JPA 예제(결합 인덱스) 졸리운_곰 2018.12.31 234
82 SpringBoot JPA 예제(@ManyToOne, 단방향) 졸리운_곰 2018.12.31 300
대표 김성준 주소 : 경기 용인 분당수지 U타워 등록번호 : 142-07-27414
통신판매업 신고 : 제2012-용인수지-0185호 출판업 신고 : 수지구청 제 123호 개인정보보호최고책임자 : 김성준 sjkim70@stechstar.com
대표전화 : 010-4589-2193 [fax] 02-6280-1294 COPYRIGHT(C) stechstar.com ALL RIGHTS RESERVED