Ich habe meine Entwicklungsumgebung auf Eclipse Neon aktualisiert und m2e eingeführt, um Projektabhängigkeiten zu verwalten. in einem Projekt waren die ursprünglichen (sehr alten) Versionen von JFreeChart
nicht verfügbar auf Maven, so habe ich die neuesten Versionen von JFreeChart
und JCommon
eingefügt.Der Typ org.jfree.data.general.Series kann nicht aufgelöst werden
Ich habe jetzt einen Compiler-Fehler, wie unten beschrieben:
The type org.jfree.data.general.Series cannot be resolved.
It is indirectly referenced from required .class files.
ich eine Reihe von Fragen und Antworten dazu gefunden haben, aber sie scheinen das Fehlen von JCommon
zu beziehen. Ich habe JCommon
in meinen Abhängigkeiten, und ich habe überprüft, dass die spezifische Klasse, die bezeichnet wird, tatsächlich in der Datei jfreechart.jar
mit 7-zip ist. Unten ist das Codefragment mit dem Fehler, der bei der letzten else-Anweisung results.add(…)
auftritt.
public XYDataset getMetricHistogramData(Timestamp t1, Timestamp t2){
int index1=-1;
Timestamp startTime,endTime;
TimePeriodValues results = new TimePeriodValues(this.type.name());
final TimePeriodValuesCollection results1 = new TimePeriodValuesCollection();
if (t1.before(earliest)||t1.after(latest)||(readings.size()<=1)) return null; // won't find a value for the timestamp t1
if (t2.before(earliest)||t2.after(latest)) return null; // won't find a value for the timestamp t2
for(int i = 0;i<readings.size();i++){
if (readings.get(i).timestamp().equals(t1)){
index1=i;
break;
}
if (readings.get(i).timestamp().after(t1)){
index1=i-1;
break;
}
}
// index1 now contains the index of the starting timestamp
for (int i=index1; i<(readings.size()-1); i++){
startTime = readings.get(i).timestamp();
if(startTime.after(t2)) break;
//endTime = new Timestamp(Math.abs(readings.get(i+1).timestamp().getTime()-Timestamped.SECOND_IN_MS));
endTime = readings.get(i+1).timestamp();
if (endTime.before(startTime))
SmartPower.getMain().getFrame().displayLog("Bad Timestamps "+startTime + " - " + endTime+"\n\r");
else results.add(new SimpleTimePeriod(startTime, endTime), readings.get(i).value());
}
results1.addSeries(results);
return results1;
}
Das ist mein pom.xml Datei
<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>
<groupId>SmartPower</groupId>
<artifactId>SmartPower</artifactId>
<version>0.0.1-SNAPSHOT</version>
<build>
<sourceDirectory>src</sourceDirectory>
<resources>
<resource>
<directory>src</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.5.1</version>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.eclipse.persistence/javax.persistence -->
<dependency>
<groupId>org.eclipse.persistence</groupId>
<artifactId>javax.persistence</artifactId>
<version>2.1.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.jfree/jfreechart -->
<dependency>
<groupId>org.jfree</groupId>
<artifactId>jfreechart</artifactId>
<version>1.0.19</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.jfree/jcommon -->
<dependency>
<groupId>org.jfree</groupId>
<artifactId>jcommon</artifactId>
<version>1.0.23</version>
</dependency>
<!-- https://mvnrepository.com/artifact/com.jgoodies/forms -->
<dependency>
<groupId>com.jgoodies</groupId>
<artifactId>forms</artifactId>
<version>1.2.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.apache.derby/derby -->
<dependency>
<groupId>org.apache.derby</groupId>
<artifactId>derby</artifactId>
<version>10.12.1.1</version>
</dependency>
</dependencies>
</project>
Neon war ein sauberes etwa eine Woche vor installieren auf Windows 10.
Alle Zeiger geschätzt würde.
Ist dies nicht hilfreich ist, geben Sie bitte Ihre Frage bearbeiten schließen a [mcve], die das von Ihnen beschriebene Problem aufweist. – trashgod
Dies weist auf das Problem mit der Eclipse-Umgebung und nicht mit den JAR-Dateien hin. Ich denke, ich habe in der ursprünglichen Frage alle Einzelheiten dazu angegeben. Ich werde versuchen, Sie Code-Fragment in meiner Umgebung. – gjwo
Ich habe ein Testpaket in meine Struktur org.ladbury.testPkg eingefügt und dann mit dem obigen Code eine neue Testklasse im Paket erstellt. Ich erhalte einen Fehler bei der umschließenden Paketanweisung von "Der Typ org.jfree.data.DomainInfo kann nicht aufgelöst werden. Er wird indirekt von erforderlichen .class-Dateien referenziert" + verschiedene andere Fehler. Diese Klasse ist auch in der Datei jfreechar.jar vorhanden. Ich bemerke, dass Ihre JAR-Dateien "-fx" nach der Version enthalten, meins ist das nicht signifikant? – gjwo