Das Verständnis der Eclipse-classpath-Erklärungen

Ich versuche zu verstehen, die Eclipse-classpath-Datei, insbesondere, ich will das wissen:

  1. Wie ist die JRE nutzt (d.h. der JVM Lesen diese xml-Datei direkt, oder ist eclipse irgendwie die Einspeisung in den internen compiler)?
  2. Wie sind die komplexe Einträge (wie der Efeu Pfad unten) analysiert und fließen in die JVM ClassLoader, wenn ich mit meinen Klassen aus meiner IDE?

Kontext: ich habe ein seltsamen Fehler, dass eclipse mit der "falschen" version einer Klasse, in der Erwägung, dass mein Efeu /ant-build ist die richtige version, und ich möchte daher zum Werkzeug von Eclipse besser imitieren die classloader in meinem rein zu bauen. Um dies zu tun, ich denke, ich werde ein Blick auf die Eclipse-Projekt/classpath-Dateien.

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
    <classpathentry kind="src" path="src"/>
    <classpathentry kind="src" path="test"/>
    <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
    <classpathentry kind="lib" path="conf"/>
    <classpathentry kind="con" path="org.apache.ivyde.eclipse.cpcontainer.IVYDE_CONTAINER/?ivyXmlPath=ivy.xml&amp;confs=*"/>
    <classpathentry kind="output" path="build"/>
</classpath>
Ich glaube nicht, dass die JVM weiß etwas über die Eclipse-classpath-Datei. Sie können klopfen, eine test-Klasse mit einer main-block, der nur druckt-System.getProperty("java.Klasse.Pfad") - zeigen Sie, dass alle Ihre komplexe Referenzen werden nur gelöst, um jar-Datei Speicherorte auf der Festplatte, die dann eingespeist in einen normalen JRE-classpath. Wenn Sie einen obskuren bug mit den Ivy-Sachen, dann möchten Sie vielleicht zu erhöhen, es mit den Entwicklern der Ivy Eclipse-plugin? Viel Glück lösen Ihr Problem

InformationsquelleAutor jayunit100 | 2012-02-14

Schreibe einen Kommentar