title: warning: unknown enum constant Status.STABLE
body: <p>In the quest to solve <a href="https://stackoverflow.com/questions/46696451/using-junit-5-with-java-9">this</a> and somehow <a href="https://stackoverflow.com/questions/41366582/where-should-i-put-unit-tests-when-migrating-a-java-8-project-to-jigsaw">that</a>, I was trying out to create packages to subdivide <code>main</code> and <code>test</code> classes and then to make use of compiler with added modules to execute the unit-tests. Not a very good way agreed, but just a hypothetical structure for now.</p>
  
  <p><a href="https://i.stack.imgur.com/CfuYV.png" rel="noreferrer"><img src="https://i.stack.imgur.com/CfuYV.png" alt="enter image description here"></a></p>
  
  <p>Few open questions as I proceeded further were:-</p>
  
  <ul>
  <li>Add a JDK9 based module to the project.</li>
  <li>Add JUnit5 to the classpath using IntelliJ's shortcut. (lib folder) [<code>junit-jupiter-api-5.0.0.jar</code>]</li>
  </ul>
  
  <p><strong>Q. Note that it brings along the <code>opentest4j-1.0.0.jar</code> to the lib/ folder. Why is that so, what is the other jar used for?</strong> </p>
  
  <ul>
  <li><p>Add the classes and generate some tests method correspondingly.</p></li>
  <li><p>Compile the <a href="https://github.com/namannigam/Jigsaw/tree/master/junit5jdk9trial/" rel="noreferrer">sample project</a> (shared just to draw a picture of the directory structure in use) using the command </p>
  
  <pre><code>javac --module-path lib -d "target" $(find src -name "*.java")
  </code></pre>
  
  <p>Results into warnings as - </p></li>
  </ul>
  
  <blockquote>
  <pre><code>warning: unknown enum constant Status.STABLE   
    reason: class file for org.apiguardian.api.API$Status not found 
  warning: unknown enum constant Status.STABLE 
  2 warnings
  </code></pre>
  </blockquote>
  
  <p><strong><em>Note</em></strong>:-</p>
  
  <p>I find the usage of <code>junit-jupiter</code> suspicious since if I comment out the code using JUnit and execute the same command, things seem to be working fine.</p>
  
  <p><strong><em>Libraries/Tools</em></strong> used if that might matter:-</p>
  
  <ul>
  <li><code>junit-jupiter-api-5.0.0</code> with </li>
  <li>Java version <code>"9" (build 9+181)</code></li>
  <li>IntelliJ <code>2017.2.5</code></li>
  </ul>
  
  <p><strong>Q. What could be a probable cause to such a warning? Moreover, I am unable to find the <code>API.Status</code> in my project and outside the project classes as well.</strong></p>