title: Exception in thread "main" core.ops.SignatureUnificationException: could not find a class named: ClassName. cannot find a nonmain class
body: <p>While I have seen this happen with the main class and fixed it, I am now getting an error in which my main class cannot find another class I've created to make an object. The classes are within the same Eclipse project file, which is using sinbad to read xml. The classes are</p>
  <pre><code>public class RiverRunner {
      public static void main(String[] args) {
          
          String code1=&quot;abag1&quot;;
          DataSource ds1= DataSource.connectAs(&quot;xml&quot;,&quot;https://water.weather.gov/ahps2/rss/obs/&quot;+code1+&quot;.rss&quot;);
          ds1.setCacheTimeout(100);
          ds1.load();
          //ds1.printUsageString();'
          System.out.printf(&quot;&quot;);
          //Rivers ob1 = new Rivers();
          Rivers ob1 = ds1.fetch(&quot;Rivers&quot;, &quot;title&quot;, &quot;geo:lat&quot;, &quot;geo:long&quot;);
          System.out.println(code1 + &quot;: &quot; + ob1);
          
          
      }
    
  }
  
  public class Rivers {
      
      private String name;
      private float lat;
      private float lon;
      
      public Rivers(String name, float lat, float lon) {
          
          this.name=name;
          this.lat=lat;
          this.lon=lon;
      }
      //as of yet unwritten methods
  }
  </code></pre>
  <p>and the precise error is</p>
  <pre><code>Exception in thread &quot;main&quot; core.ops.SignatureUnificationException: could not find a class named: Rivers (ds:no-class)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
  at sun.reflect.NativeConstructorAccessorImpl.newInstance(Unknown Source)
  at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(Unknown Source)
  at java.lang.reflect.Constructor.newInstance(Unknown Source)
  at core.log.Errors.exception(Errors.java:57)
  at core.sig.SigUtils.classFor(SigUtils.java:32)
  at core.data.DataSource.fetch(DataSource.java:705)
  at RequiredPackage.RiverRunner.main(RiverRunner.java:20)
  </code></pre>
  <p>I've heard it has something to do with .classpath, but I do not know how to open or edit that, nor what it should look like. Other .java files within the project display the same issue. Copy pasting a functional .classpath did not work. Finally, RiverRunner recognizes that Rivers is real to some extent, because if I misspell Rivers when creating ob1, it gives a &quot;cannot be resolved to a type&quot; error, which does not occur if called correctly.</p>