- 編輯solrApp專案pom.xml。(只有修改dependencies部份)
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> ....... <dependencies> <!-- Solr自帶的Guava 14.0.1在GlassFish啟動時,會導致CDI deployment failure:WELD-001408錯誤, 所以需要刪除自帶的Guava ,並導入最新的Guava --> <dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>17.0</version> </dependency> <!-- 加這個相依是因為glassfish啟動時,會出現下面的警告 Unable to load class org.apache.hadoop.hdfs.web.resources.UserProvider reason: java.lang.NoClassDefFoundError: com/sun/jersey/spi/inject/InjectableProvider --> <dependency> <groupId>com.sun.jersey</groupId> <artifactId>jersey-bundle</artifactId> <version>1.9.1</version> </dependency> </dependencies> ....... </project>
就算沒有加 jersey-bundle的dependency也不會影響solrApp運作
- 刪除solr本身自帶的guava.jar
- 到 C:\solr\example\ 資料夾底下,將solr資料夾整個複製到c槽並且重新命名為solrhome,並且再新增一個solrdata資料夾。
solr資料夾指的就是啟動時,引用core的那個資料夾,而且非強制重命名。 - 如果02_建立DB CORE並查詢這個步驟有完成,可以順便把db core放進去solrhome資料夾,但是要另外將 C:\solr\ 資料夾 的contrib、dist 資料夾一同複製放到solrhome裡面去
加入contrib、dist這兩個資料夾是因為db core的solrconfig.xml有引用 - 如果放入db core,需要重新編輯 C:\solrhome\db\conf\solrconfig.xml ,將lib的引用路徑進行修正。
<lib dir="../dist/" regex="solr-dataimporthandler-.*\.jar" /> <lib dir="../contrib/extraction/lib" regex=".*\.jar" /> <lib dir="../dist/" regex="solr-cell-\d.*\.jar" /> <lib dir="../contrib/clustering/lib/" regex=".*\.jar" /> <lib dir="../dist/" regex="solr-clustering-\d.*\.jar" /> <lib dir="../contrib/langid/lib/" regex=".*\.jar" /> <lib dir="../dist/" regex="solr-langid-\d.*\.jar" /> <lib dir="../contrib/velocity/lib" regex=".*\.jar" /> <lib dir="../dist/" regex="solr-velocity-\d.*\.jar" />
2014年10月27日 星期一
Solr_08_03_solrApp專案設定調整
訂閱:
張貼留言 (Atom)
沒有留言:
張貼留言