雜記
隨筆 - 32, 文章 - 1, 評論 - 5, 引用 - 0
數據加載中……
eclipse你不知道的.classpath
題目是噱頭,用的人都知道。我想說的是classpath中不太注意的classpathentry excluding。
昨天在跑junit測試時,報錯提示springframe.test.jar多次加載。 nnd,前天跑還一切正常,今天切了一下版本,又切回來,就不行了。
java.lang.IllegalStateException: Unable to dynamically start generated unit test bundle
at org.springframework.osgi.test.AbstractOnTheFlyBundleCreatorTests.postProcessBundleContext(AbstractOnTheFlyBundleCreatorTests.java:
527
)
at org.springframework.osgi.test.AbstractConfigurableBundleCreatorTests.postProcessBundleContext(AbstractConfigurableBundleCreatorTests.java:
223
)
at org.springframework.osgi.test.AbstractOsgiTests.startup(AbstractOsgiTests.java:
262
)
at org.springframework.osgi.test.AbstractOsgiTests.prepareTestExecution(AbstractOsgiTests.java:
374
)
at org.springframework.osgi.test.AbstractOsgiTests.runBare(AbstractOsgiTests.java:
203
)
at org.springframework.osgi.test.AbstractOsgiTests$
1
.protect(AbstractOsgiTests.java:
184
)
at junit.framework.TestResult.runProtected(TestResult.java:
124
)
at org.springframework.osgi.test.AbstractOsgiTests.run(AbstractOsgiTests.java:
181
)
at junit.framework.TestSuite.runTest(TestSuite.java:
230
)
at junit.framework.TestSuite.run(TestSuite.java:
225
)
at org.eclipse.jdt.internal.junit.runner.junit3.JUnit3TestReference.run(JUnit3TestReference.java:
130
)
at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:
38
)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
460
)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:
673
)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:
386
)
at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:
196
)
Caused by: org.osgi.framework.BundleException: Cannot
import
a
package
more than once
"
org.springframework.osgi.test
"
at org.eclipse.osgi.internal.resolver.StateBuilder.checkImportExportSyntax(StateBuilder.java:
533
)
at org.eclipse.osgi.internal.resolver.StateBuilder.validateHeaders(StateBuilder.java:
185
)
at org.eclipse.osgi.internal.resolver.StateBuilder.createBundleDescription(StateBuilder.java:
49
)
at org.eclipse.osgi.internal.resolver.StateObjectFactoryImpl.createBundleDescription(StateObjectFactoryImpl.java:
32
)
at org.eclipse.osgi.internal.baseadaptor.BaseStorage.updateState(BaseStorage.java:
1112
)
at org.eclipse.osgi.internal.baseadaptor.BundleInstall.commit(BundleInstall.java:
128
)
at org.eclipse.osgi.framework.internal.core.Framework.installWorkerPrivileged(Framework.java:
965
)
at org.eclipse.osgi.framework.internal.core.Framework$
2
.run(Framework.java:
854
)
at java.security.AccessController.doPrivileged(Native Method)
at org.eclipse.osgi.framework.internal.core.Framework.installWorker(Framework.java:
905
)
at org.eclipse.osgi.framework.internal.core.Framework.installBundle(Framework.java:
849
)
at org.eclipse.osgi.framework.internal.core.BundleContextImpl.installBundle(BundleContextImpl.java:
234
)
at org.springframework.osgi.test.AbstractOnTheFlyBundleCreatorTests.installAndStartBundle(AbstractOnTheFlyBundleCreatorTests.java:
539
)
at org.springframework.osgi.test.AbstractOnTheFlyBundleCreatorTests.postProcessBundleContext(AbstractOnTheFlyBundleCreatorTests.java:
524
)
15
more
找了一個小時都沒找到原因。
項目背景是該模塊使用的是osgi框架,框架中包含spring的所有包。但是在編譯時,需要單獨把測試包加進來。
根據問題,我懷疑是classpath,但是如果去掉jar包引用,連編譯都編譯不過去。
最后翻到eclipse的.classpath文件才找到原因,classpathentry excluding這家伙被覆蓋掉了。
excluding標簽是保證項目在啟動時不會講指定的目錄jar加載到內存,只做編譯引用。
我在切換版本時,將其覆蓋了。
posted on 2010-12-09 18:24
colorfire
閱讀(3217)
評論(0)
編輯
收藏
新用戶注冊
刷新評論列表
只有注冊用戶
登錄
后才能發表評論。
網站導航:
博客園
IT新聞
Chat2DB
C++博客
博問
管理
Powered by:
BlogJava
Copyright © colorfire
導航
BlogJava
首頁
新隨筆
聯系
聚合
管理
<
2010年12月
>
日
一
二
三
四
五
六
28
29
30
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
1
2
3
4
5
6
7
8
常用鏈接
我的隨筆
我的評論
我的參與
最新評論
留言簿
給我留言
查看公開留言
查看私人留言
隨筆分類
Java(1)
(rss)
Linux(1)
(rss)
技術
(rss)
數據庫
(rss)
腳本語言(7)
(rss)
隨筆檔案
2011年10月 (2)
2011年5月 (1)
2011年4月 (2)
2011年3月 (2)
2011年2月 (1)
2011年1月 (1)
2010年12月 (6)
2010年11月 (6)
2010年10月 (1)
2010年8月 (3)
收藏夾
收藏夾
(rss)
博客鏈接
Caspar Ant
Red Hat 測試組專家 Linux專家
Fenng
Architect / Blogger Work@丁香園(DXY.cn) ex Work@支付寶(Alipay)
PHP平凡世界
GAE平臺使用
python geek
python erlang linux programing
python相關
召仁
后端技術-楊衛華
回憶未來-張宴
金山 系統架構師
惠普-招聘
求職博客
Jobs Digg 是一個實驗性的招聘求職互助協作平臺. 覆蓋工作相關信息: 招聘、求職、就業、面試、裁員、感悟
搜索
最新評論
1.?re: perl中神奇的split
評論內容較長,點擊標題查看
--forwall
2.?re: 人性的小船[未登錄]
順應自然,自然能被理解吧!
--小尋
3.?re: 人性的小船
有一個哈佛公開課《什么是正義》就有這么一個案例。結果是有罪。至于原因,那里面也分析得很透徹。
--XD
4.?re: 人性的小船
評論內容較長,點擊標題查看
--張昊
5.?re: 人性的小船
好
--淘寶皇冠店126
閱讀排行榜
1.?eclipse你不知道的.classpath(3217)
2.?安裝perl的crc32模塊(2270)
3.?人性的小船(1855)
4.?[數據庫]Oracle釋放磁盤空間(1633)
5.?Eclipse自動補全(1237)
評論排行榜
1.?人性的小船(4)
2.?perl中神奇的split(1)
3.?安裝perl的crc32模塊(0)
4.?利用Java反射讀取XML配置文件(0)
5.?轉:JAVA處理XML文件方法比較(0)
主站蜘蛛池模板:
亚洲精品动漫免费二区
|
亚洲线精品一区二区三区影音先锋
|
少妇中文字幕乱码亚洲影视
|
国产午夜无码片免费
|
亚洲欧洲日产国码av系列天堂
|
97超高清在线观看免费视频
|
亚洲乱色熟女一区二区三区丝袜
|
日本免费无遮挡吸乳视频电影
|
avtt天堂网手机版亚洲
|
男人的好看免费观看在线视频
|
亚洲中文久久精品无码1
|
成年女性特黄午夜视频免费看
|
亚洲AV无码无限在线观看不卡
|
最近2019中文字幕免费看最新
|
亚洲AV日韩综合一区
|
亚洲精品tv久久久久
|
免费av一区二区三区
|
亚洲人成在线免费观看
|
免费无码又爽又刺激毛片
|
特级毛片爽www免费版
|
亚洲精品无码午夜福利中文字幕
|
中文字幕在线观看亚洲
|
免费中文熟妇在线影片
|
国产亚洲精品2021自在线
|
自拍偷自拍亚洲精品被多人伦好爽
|
国产拍拍拍无码视频免费
|
亚洲jjzzjjzz在线播放
|
亚洲av麻豆aⅴ无码电影
|
在线观看免费播放av片
|
亚洲国产精品成人久久久
|
国产在线观看免费视频播放器
|
精品97国产免费人成视频
|
一个人免费高清在线观看
|
老司机午夜在线视频免费
|
亚洲AV无码一区二区二三区入口
|
色婷婷精品免费视频
|
亚洲精品自在在线观看
|
无码一区二区三区AV免费
|
香蕉国产在线观看免费
|
亚洲国产精品久久人人爱
|
亚洲国产a级视频
|