diff --git a/bundles/org.eclipse.epp.logging.aeri.core/pom.xml b/bundles/org.eclipse.epp.logging.aeri.core/pom.xml
index 7e61dcb..4a327e0 100644
--- a/bundles/org.eclipse.epp.logging.aeri.core/pom.xml
+++ b/bundles/org.eclipse.epp.logging.aeri.core/pom.xml
@@ -29,9 +29,9 @@
 					</dependencies>
 					<repositories>
 						<repository>
-							<id>2018-12</id>
+							<id>${simrel}</id>
 							<layout>p2</layout>
-							<url>http://download.eclipse.org/releases/2018-12</url>
+							<url>http://download.eclipse.org/releases/${simrel}</url>
 						</repository>
 					</repositories>
 				</configuration>
diff --git a/bundles/org.eclipse.epp.logging.aeri.ide/META-INF/MANIFEST.MF b/bundles/org.eclipse.epp.logging.aeri.ide/META-INF/MANIFEST.MF
index ebeed41..eb81c6d 100644
--- a/bundles/org.eclipse.epp.logging.aeri.ide/META-INF/MANIFEST.MF
+++ b/bundles/org.eclipse.epp.logging.aeri.ide/META-INF/MANIFEST.MF
@@ -54,13 +54,13 @@
  org.apache.http.impl.client.cache;version="[4.3.0,5.0.0)",
  org.apache.http.message;version="[4.3.0,5.0.0)",
  org.apache.http.util;version="[4.3.0,5.0.0)",
- org.apache.lucene.analysis;core=split;version="[7.5.0,8.0.0)",
- org.apache.lucene.analysis.core;version="[7.5.0,8.0.0)",
- org.apache.lucene.document;core=split;version="[7.5.0,8.0.0)",
- org.apache.lucene.index;core=split;version="[7.5.0,8.0.0)",
- org.apache.lucene.search;core=split;version="[7.5.0,8.0.0)",
- org.apache.lucene.store;core=split;version="[7.5.0,8.0.0)",
- org.apache.lucene.util;version="[7.5.0,8.0.0)"
+ org.apache.lucene.analysis;core=split;version="[8.0.0,9.0.0)",
+ org.apache.lucene.analysis.core;version="[8.0.0,9.0.0)",
+ org.apache.lucene.document;core=split;version="[8.0.0,9.0.0)",
+ org.apache.lucene.index;core=split;version="[8.0.0,9.0.0)",
+ org.apache.lucene.search;core=split;version="[8.0.0,9.0.0)",
+ org.apache.lucene.store;core=split;version="[8.0.0,9.0.0)",
+ org.apache.lucene.util;version="[8.0.0,9.0.0)"
 Export-Package: org.eclipse.epp.internal.logging.aeri.ide;x-internal:=true,
  org.eclipse.epp.internal.logging.aeri.ide.server;x-internal:=true,
  org.eclipse.epp.internal.logging.aeri.ide.server.json;x-internal:=true,
diff --git a/bundles/org.eclipse.epp.logging.aeri.ide/pom.xml b/bundles/org.eclipse.epp.logging.aeri.ide/pom.xml
index e4f8273..a78e61e 100644
--- a/bundles/org.eclipse.epp.logging.aeri.ide/pom.xml
+++ b/bundles/org.eclipse.epp.logging.aeri.ide/pom.xml
@@ -29,9 +29,9 @@
 					</dependencies>
 					<repositories>
 						<repository>
-							<id>2018-12</id>
+							<id>${simrel}</id>
 							<layout>p2</layout>
-							<url>http://download.eclipse.org/releases/2018-12</url>
+							<url>http://download.eclipse.org/releases/${simrel}</url>
 						</repository>
 					</repositories>
 				</configuration>
diff --git a/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/LocalReportsHistory.java b/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/LocalReportsHistory.java
index 0d86636..86a8f22 100644
--- a/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/LocalReportsHistory.java
+++ b/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/LocalReportsHistory.java
@@ -92,7 +92,7 @@
         try {
             searcher = manager.acquire();
             TopDocs results = searcher.search(query, 1);
-            boolean foundIdenticalReport = results.totalHits > 0;
+            boolean foundIdenticalReport = results.totalHits.value > 0;
             return foundIdenticalReport;
         } catch (Exception e) {
             log(WARN_HISTORY_NOT_AVAILABLE, e);
@@ -165,7 +165,8 @@
         conf.setOpenMode(OpenMode.CREATE_OR_APPEND);
         writer = new IndexWriter(index, conf);
         // to build an initial index if empty:
-        if (writer.numDocs() == 0) {
+        IndexWriter.DocStats stats = writer.getDocStats();
+        if (stats.numDocs == 0) {
             buildInitialIndex();
         }
     }
diff --git a/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/rest/LuceneHttpCacheStorage.java b/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/rest/LuceneHttpCacheStorage.java
index 121c015..d4fb0ba 100644
--- a/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/rest/LuceneHttpCacheStorage.java
+++ b/bundles/org.eclipse.epp.logging.aeri.ide/src/org/eclipse/epp/internal/logging/aeri/ide/server/rest/LuceneHttpCacheStorage.java
@@ -79,7 +79,7 @@
         try {
             Query query = new TermQuery(new Term(KEY_FIELD_NAME, key));
             TopDocs topDocs = searcher.search(query, 1);
-            if (topDocs.totalHits > 1) {
+            if (topDocs.totalHits.value > 1) {
                 throw new IOException("Corrupt index (cache key is not unique)");
             }
 
diff --git a/pom.xml b/pom.xml
index 686fd6c..34cc2eb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -54,7 +54,7 @@
 		<tychoVersion>1.4.0</tychoVersion>
 		<!-- The default simultaneous release used to base the target platform 
 			on (override with -Dsimrel=...) -->
-		<simrel>2018-12</simrel>
+		<simrel>2019-06</simrel>
 		<!-- Use HTTP, as it provides the most firewall-friendly access to the 
 			Git repository. -->
 		<tycho.scmUrl>scm:git:http://git.eclipse.org/gitroot/epp/org.eclipse.epp.logging.git</tycho.scmUrl>
diff --git a/releng/targets/2019-06/2019-06.target b/releng/targets/2019-06/2019-06.target
new file mode 100644
index 0000000..acb1c56
--- /dev/null
+++ b/releng/targets/2019-06/2019-06.target
@@ -0,0 +1,63 @@
+<?xml version="1.0" encoding="UTF-8" standalone="no"?><?pde version="3.8"?><target name="Target Definition for Eclipse 2018-12 (4.10)" sequenceNumber="1">
+<locations>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.ecf.core.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.ecf.filetransfer.feature.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.equinox.p2.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.sdk.ide" version="0.0.0"/>
+<!-- Release platform build for 2019-06 M1 -->
+<repository location="https://download.eclipse.org/eclipse/updates/4.12milestones/S-4.12M1-201904110625/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.emf.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.emf.ecore.xcore.sdk.feature.group" version="0.0.0"/>
+<!-- Release build for 2019-06 M1 -->
+<repository location="http://download.eclipse.org/modeling/emf/emf/builds/milestone/S201904050820"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.mylyn.commons.sdk.feature.group" version="0.0.0"/>
+<unit id="org.eclipse.mylyn.sdk_feature.feature.group" version="0.0.0"/>
+<repository location="http://download.eclipse.org/mylyn/drops/3.25.0/v20180926-0301/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+<unit id="ch.qos.logback.classic" version="1.0.7.v20121108-1250"/>
+<unit id="ch.qos.logback.core" version="1.0.7.v20121108-1250"/>
+<unit id="ch.qos.logback.slf4j" version="1.0.7.v201505121915"/>
+<unit id="com.google.gson" version="2.8.2.v20180104-1110"/>
+<unit id="com.google.guava" version="21.0.0.v20170206-1425"/>
+<unit id="javax.inject" version="1.0.0.v20091030"/>
+<unit id="org.apache.commons.codec" version="1.10.0.v20180409-1845"/>
+<unit id="org.apache.commons.io" version="2.6.0.v20190123-2029"/>
+<unit id="org.apache.commons.lang3" version="3.1.0.v201403281430"/>
+<unit id="org.apache.httpcomponents.httpclient" version="4.5.6.v20190213-1430"/>
+<unit id="org.apache.httpcomponents.httpcore" version="4.4.10.v20190123-2214"/>
+<unit id="org.apache.lucene.core" version="3.5.0.v20120725-1805"/>
+<unit id="org.apache.lucene.core" version="8.0.0.v20190404-1858"/>
+<unit id="org.apache.lucene.analyzers-common" version="8.0.0.v20190404-1858"/>
+<unit id="org.hamcrest.core" version="1.3.0.v20180420-1519"/>
+<unit id="org.hamcrest.library" version="1.3.0.v20180524-2246"/>
+<unit id="org.junit" version="4.12.0.v201504281640"/>
+<unit id="net.bytebuddy.byte-buddy" version="1.9.0.v20181107-1410"/>
+<unit id="net.bytebuddy.byte-buddy-agent" version="1.9.0.v20181106-1534"/>
+<unit id="org.mockito" version="2.23.0.v20181106-1534"/>
+<unit id="org.objenesis" version="2.6.0.v20180420-1519"/>
+<unit id="org.slf4j.api" version="1.7.2.v20121108-1250"/>
+<unit id="org.yaml.snakeyaml" version="1.14.0.v201604211500"/>
+<!-- Recommended Orbit build for 2019-06 M1 -->
+<repository location="http://download.eclipse.org/tools/orbit/downloads/drops/S20190409154117/repository/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.swtbot.feature.group" version="2.2.1.201402241301"/>
+<unit id="org.eclipse.swtbot.eclipse.feature.group" version="2.2.1.201402241301"/>
+<unit id="org.apache.log4j" version="1.2.15.v201012070815"/>
+<unit id="org.hamcrest.core" version="1.3.0.v201303031735"/>
+<unit id="org.hamcrest.library" version="1.3.0.v201305281000"/>
+<repository location="http://download.eclipse.org/technology/swtbot/releases/2.2.1/"/>
+</location>
+<location includeAllPlatforms="false" includeConfigurePhase="false" includeMode="slicer" includeSource="true" type="InstallableUnit">
+<unit id="org.eclipse.license.feature.group" version="1.0.1.v20140414-1359"/>
+<repository location="http://download.eclipse.org/cbi/updates/license"/>
+</location>
+</locations>
+<targetJRE path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/>
+</target>
diff --git a/releng/targets/2019-06/pom.xml b/releng/targets/2019-06/pom.xml
new file mode 100644
index 0000000..25eb24c
--- /dev/null
+++ b/releng/targets/2019-06/pom.xml
@@ -0,0 +1,16 @@
+<?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">
+	<modelVersion>4.0.0</modelVersion>
+
+	<parent>
+		<groupId>org.eclipse.epp.logging</groupId>
+		<artifactId>targets</artifactId>
+		<version>2.0.8-SNAPSHOT</version>
+		<relativePath>../pom.xml</relativePath>
+	</parent>
+
+	<artifactId>2019-06</artifactId>
+	<packaging>eclipse-target-definition</packaging>
+
+	<name>Target Definition for Eclipse 2019-06 (4.12)</name>
+</project>
diff --git a/releng/targets/pom.xml b/releng/targets/pom.xml
index f35f7c8..112cb44 100644
--- a/releng/targets/pom.xml
+++ b/releng/targets/pom.xml
@@ -18,6 +18,7 @@
 		<module>photon</module>
 		<module>2018-09</module>
 		<module>2018-12</module>
+		<module>2019-06</module>
 	</modules>
 
 	<build>
