<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<meta name="copyright" content="Copyright (c) Eclipse contributors and others 2018. This page is made available under license. For full details see: https://www.eclipse.org/legal/notice.html">
<meta http-equiv="Content-Language" content="en-us">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="stylesheet" href="news.css" type="text/css">
<title>Eclipse 4.x - New and Noteworthy</title>
</head>
<body>

  <h1>Eclipse 4.x - New and Noteworthy</h1>
  <p>
    Welcome to the Eclipse SDK project!
  </p>
  <p>
    The Eclipse SDK project is part of the Eclipse YYYY-MM simultaneous release.
    The Eclipse SDK and related resources can be downloaded from the <a href="https://download.eclipse.org/eclipse/downloads/">Eclipse Project downloads page</a>.
    The Eclipse installer and other packages can be downloaded from the <a href="https://www.eclipse.org/downloads/packages/installer">Eclipse Installer</a> page.
  </p>
  
  <!--
  <p>
  	The 4.x release notes for the Eclipse SDK project can be found <a href="https://www.eclipse.org/eclipse/development/readme_eclipse_4.x.php">here</a>.
  </p>
  -->
  
  <p>Here are some of the more noteworthy items available in this release.</p>

  <blockquote>
    <ul>
      <li><a href="platform.php">New features in the Platform and Equinox</a></li>
      <li><a href="jdt.php">New features for Java developers</a></li>
      <li><a href="platform_isv.php">New APIs in the Platform and Equinox</a></li>
      <li><a href="pde.php">New features for plug-in developers</a></li>
    </ul>
  </blockquote>
  <p>
    <b>Windows 10 users:</b> <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=548443">Windows 10 Defender significantly slows down Eclipse</a>, reason being Windows 10 Defender scanning the JAR files.
    The problem has been reported to Microsoft <a href="https://github.com/microsoft/java-wdb/issues/9">here</a>.
    Until then, a workaround to this problem is to add Eclipse root directory to Windows 10 Defender's exclusion list, detailed steps are shared <a href="https://bugs.eclipse.org/bugs/show_bug.cgi?id=548443#c28">here</a>.
  </p>
  <p>Note: This is not just an Eclipse issue on Windows 10.</p>

</body>
</html>
