<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html lang="en">
<head>
<meta name="copyright" content="Copyright (c) 2015, 2016 IBM Corporation and others. This page is made available under license. For full details see the LEGAL in the documentation book that contains this page." >
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<meta http-equiv="Content-Style-Type" content="text/css">
<link rel="STYLESHEET" href="../../book.css" charset="ISO-8859-1" type="text/css">
<title>Eclipse Oxygen (4.7) Plug-in Migration FAQ</title>
</head>

<body>

<h1>Eclipse Oxygen (4.7) Plug-in Migration FAQ</h1>

<ol>
	<li><a href="#lucene">Apache Lucene bundle changes</a></li>
</ol>

<hr>

<!-- ############################################## -->
<h2><a name="lucene">1. Apache Lucene bundle changes</a></h2>
<p> As part of the migration to Lucene 6.1, the third-party Lucene bundles were updated from version 3.5 to 6.1.
<ol>
	<li>Bundle <code>org.apache.lucene.core</code> was bumped in version so consumers should not see any difference except the changes of Lucene itself (see link below).
	However some of the new classes were moved by the Lucene project to the <code>org.apache.lucene.misc</code> by making use of split-packages.</li>
	
	<li>Bundle <code>org.apache.lucene.analysis</code> was removed and it's functionality was split in two new bundles: <code>org.apache.lucene.analysis-common</code> and <code>org.apache.lucene.analysis-smartcn</code>.
	Consumers should be able to make use of <code>org.apache.lucene.analysis-common</code> for everything they did in the older <code>org.apache.lucene.analysis</code> bundle except the Chinese analyzer which was moved 
	in the above-mentioned 'smartcn' bundle.
	</li>
</ol>

See <a href="https://lucene.apache.org/core/old_versioned_docs/versions/6_1_0/changes/Changes.html">
Lucene Change Log</a> for details on how the Apache Lucene changed between these versions.
</p>

<!-- ############################################## -->

</body>
</html>
