2011-03-07 26 views
1

我已經包含了所有的6個jar(beanutils,lang,日誌記錄,集合,ezmorph,json-lib)。它在簡單的struts應用程序中工作正常。但是在我的struts應用程序中,儘管我已經包含了所有的jar文件,但它顯示了一個NoClassDefFoundErrorListOrderedMap無法找到ListOrderedMap?

我不知道如何讓我的應用程序知道這個類。但是我已經包含了其他所需的不同功能的罐子。

請幫我解決這個問題。

+7

那類是Apache Commons Collections的一部分。檢查你的類路徑中是否有Apache Commons Collections jar文件的正確版本(3.0或更新版本) - 如果它是一個Web應用程序,它應該在你的war文件的'WEB-INF/lib'中。 – Jesper

+4

@Jesper - 這也可以作爲答案。 – Bozho

+0

指定的jar文件位於WEB-INF/lib文件夾中。它在其他應用程序中完美運行。我不知道這個問題。 – Manoj

回答

1

類別ListOrderedMapApache Commons Collections(自版本3.0起)的一部分。

爲了能夠使用它,必須在類路徑中包含JAR文件。 JAR文件最有可能被命名爲commons-collections-3.2.1.jar(或類似的東西)。

如果您要創建打包在WAR文件中的Web應用程序,那麼應該將該庫放在WAR文件中的WEB-INF/lib文件夾中。

0

是的,即使現在有一個新的v4.x公共收藏,4.x不工作!

所以,得到3.x版,即舊的最高版本:V3.2.1

如果你正在使用maven,像我,這是我的完整的工作依賴列表:

<dependency> 
<groupId>net.sf.json-lib</groupId> 
<artifactId>json-lib</artifactId> 
<version>2.4</version> 
<!-- <classifier>jdk15</classifier> --> 
    </dependency> 

    <dependency> 
<groupId>commons-io</groupId> 
<artifactId>commons-io</artifactId> 
<version>2.4</version> 
    </dependency> 

    <dependency> 
<groupId>commons-collections</groupId> 
<artifactId>commons-collections</artifactId> 
<version>3.2.1</version> 
    </dependency> 

    <dependency> 
<groupId>commons-beanutils</groupId> 
<artifactId>commons-beanutils</artifactId> 
<version>1.9.1</version> 
    </dependency> 

    <dependency> 
<groupId>commons-lang</groupId> 
<artifactId>commons-lang</artifactId> 
<version>2.6</version> 
    </dependency> 

    <dependency> 
<groupId>commons-logging</groupId> 
<artifactId>commons-logging</artifactId> 
<version>1.1.3</version> 
    </dependency> 

    <dependency> 
<groupId>net.sf.ezmorph</groupId> 
<artifactId>ezmorph</artifactId> 
<version>1.0.6</version> 
    </dependency> 

    <dependency> 
<groupId>xom</groupId> 
<artifactId>xom</artifactId> 
<version>1.2.5</version> 
    </dependency>