Open Source Projekte / source - binaries

martin1989

Aktives Mitglied
Hallo!

Ich habe eine Liste von Open Source Projekten die ich mir gerne herunterladen möchte, da ich mit denen eine kleine Analyse durchführen möchte, zB.:

1_jabref-2.5
2_tomcat-6.0.24
3_tight-vnc-java-1.3.10
4_azureus-vuze_4.5.1.0

Ich brauche für meine Analyse sowohl den source code als auch den bytecode.

Wenn ich mir die Open Source Projekte anschaue, weiß ich oft nicht was ich mir hier genau runterladen soll. zB hier JabRef - Browse /jabref/2.5 at SourceForge.net

Was ist hier mit "scr" gemeint? Ist dann in diesen Projekten nur der source code drinnen oder auch schon der bytecode?

Oft wird auch schon vor dem Download unterschieden ob ich scr oder binaries laden will - binaries sind nicht gleich bytecode oder?

Ich verwende dann meist einfach den ordner "scr" und "bin" für mein Analyse aus dem runtergeladenen projekt ... also im "scr" ist dann der quelltext und in "bin" ist der bytecode"

Wenn ich ein projekt runterlade wo ich nur den sourcecode haben, dann kann ich mir ja quasi den "bin" ordner, also den bytecode selber erzeugen mit eclipse oder?

zB hier:

fckeditor-java-2.6-src.zip (or tar.gz)

If you want to checkout the integration pack's source code, refit to your needs (obeying the license terms) or compile yourself, this is the perfect distribution for you.

Muss ich das runterladen, in Eclipse kompilieren damit ich den bytecode bekomme?


Vielen Vielen Dank!
 
Zuletzt bearbeitet:

stg

Top Contributor
src für SouRCe, bin für BINaries :)
Aber compilieren kannst du ja auch selbst, wenn du die sourcen hast...
Im Grunde beantwortest du deine Frage doch schon selbst.
 
Zuletzt bearbeitet:

martin1989

Aktives Mitglied
was ist dann der unterschied zwischen binärcode (Ordner bin) und binaries?

Liege ich hiermit richtig:

Open Source Software die ich als "src" runterlade muss ich kompilieren um "binärcode" zu bekommen?
Open Source Software die ich als "binaries" runterlade, habe schon binärcode dabei?


Bezüglich den Komplieren:

Muss ich den "src" ordner in eclipse importieren und dann müsste ja eigentlich schon automatisch binärcode erzeugt werden, da eclipse ja automatisch einen build durchführt oder?


Danke!
 

MisterBu

Aktives Mitglied
Soweit die Theorie. In der Praxis liefern die Open Source Projekte nur Ihren eigenen Quellcode, haben aber Abhängigkeiten von anderer in der Regel Open Source Software um deren Auflösung du dich selbst kümmern darfst. Ein einfaches Import nach Eclipse reicht daher wahrscheinlich nicht.
 

stg

Top Contributor
Soweit die Theorie. In der Praxis liefern die Open Source Projekte nur Ihren eigenen Quellcode, haben aber Abhängigkeiten von anderer in der Regel Open Source Software um deren Auflösung du dich selbst kümmern darfst. Ein einfaches Import nach Eclipse reicht daher wahrscheinlich nicht.

Naja, dafür gibts ja Maven und co...
 

martin1989

Aktives Mitglied
was meinst du mit abhängigkeiten von anderen projekten und was verstehst du unter "auflösen"?

und in wie weit helfen dann maven und co dabei?
 

Dompteur

Top Contributor
was meinst du mit abhängigkeiten von anderen projekten..
Projekte verwenden oft andere Projekte als Libraries. Dann musst du dir zum Compilieren/Starten auch diese Libraries besorgen.

...was verstehst du unter "auflösen"?
Damit meint man, dass man sich diese Libraries (in der richtigen Version !) holt und auf seiner Festplatte in die richtigen Verzeichnisse (Classpath,..) kopiert.

und in wie weit helfen dann maven und co dabei?
Bei Maven - um jetzt ein Beispiel zu nennen - hast du eine Projektbeschreibungsdatei. Diese enthält unter anderem alle von dir benötigten Libraries inkl. Versionsnummer. Maven fragt dann bei den sogennaten Repository-Servern nach. Dort liegen enerseits die fertigen Libraries, aber auch deren Abhängigkeiten bereit. So kann Maven Schritt für Schritt alle benötigte Libraries zusammensuchen.
 

Saheeda

Top Contributor
@Dompteur

Weißt du, wie Maven genau die Dependencies auflöst? Welche Seiten (in welcher Reihenfolge) danach abgesucht werden?
Für mich sieht es immer nach Magic aus, dass sowas hier tatsächlich die benötigten Dateien findet und runterlädt:
Code:
  <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.0</version>
      <type>jar</type>
      <scope>test</scope>
      <optional>true</optional>
    </dependency>
 

Dompteur

Top Contributor
Bei Maven definierst du eine Liste von Servern, auf denen Repositories gehostet sind. Diese werden bei der Suche nach einem Artifakt einfach der Reihe nach durchsucht, bis das Artifakt schließlich gefunden wird.

Das von dir als Beispiel gebrachte Code-Stück beschreibt ein Artifakt.
"groupId", "artifactId" und "version" definieren das benötigte Artifakt.
"type" sagt, dass es ein jar-File ist.
"scope" beschreibt in welche Phase des Build-Prozesses es benötigt wird. Hier wird jUnit.jar nur für die automatischen Tests benötigt.
Zum jar-File gibt es dann auch pom-File. Dieses listet alles auf, was dein Junit braucht.

Für Eclipse gibt es ein Plugin, dass verschieden Sichten auf diese Informationen bietet.
 

Saheeda

Top Contributor
Hier mal die komplette POM.

maven.apache.org bringt mich doch nur zur Hauptseite von Maven, wo auch die ganzen Tutorials und die Doku zu finden ist?
Ich bin mir auch nicht bewusst, irgendwo anders im Projekt Repos definiert zu haben.

Code:
<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/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>app</groupId>
  <artifactId>AddressBookMaven</artifactId>
  <packaging>jar</packaging>
  <version>1.0-SNAPSHOT</version>
  <name>AddressBookMaven</name>
  <url>http://maven.apache.org</url>
  <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>3.8.1</version>
      <scope>test</scope>
    </dependency>
	<dependency>
		<groupId>org.hibernate</groupId>
		<artifactId>hibernate-core</artifactId>
		<version>4.3.9.Final</version>
	</dependency>
	<dependency>
		<groupId>org.apache.logging.log4j</groupId>
		<artifactId>log4j-api</artifactId>
		<version>2.2</version>
	</dependency>
	<dependency>
		<groupId>org.apache.logging.log4j</groupId>
		<artifactId>log4j-core</artifactId>
		<version>2.2</version>
	</dependency>
	<dependency>
		<groupId>mysql</groupId>
		<artifactId>mysql-connector-java</artifactId>
		<version>5.1.35</version>
	</dependency>
	<dependency>
		<groupId>org.hsqldb</groupId>
		<artifactId>hsqldb</artifactId>
		<version>2.3.2</version>
	</dependency>	
	<dependency>
		<groupId>com.google.code.gson</groupId>
		<artifactId>gson</artifactId>
		<version>2.3.1</version>
	</dependency>	
	<dependency>
		<groupId>org.jmock</groupId>
		<artifactId>jmock-junit4</artifactId>
		<version>2.8.1</version>
	</dependency>	
	<dependency>
		<groupId>org.apache.httpcomponents</groupId>
		<artifactId>httpclient</artifactId>
		<version>4.3.6</version>
	</dependency>
  </dependencies>
</project>
 
Zuletzt bearbeitet:

martin1989

Aktives Mitglied
Hallo!

vielen dank für eure Beiträge!

ich hab jetzt mal ein paar opensource projekte runtergeladen und will anhand eines beispieles gerne noch etwas fragen:

ich hab mir junit runtergeladen:

https://github.com/junit-team/junit

dann hab ich das in eclipse importiert und dann macht er ja automatisch einen build und erstellt einen bin ordner wo der bytecode reinkommt. Damit wäre ja mein zweck schon erfüllt, ich brauche ja nur den dazugehörigen byte code. Ich will es ja eigentlich nicht starten bzw. compilieren , ich bräuchte nur den bytecode zum source code.

Nun stellt sich für mich die frage, woher weiß ich das dies jetzt vollständig ist? also das ich den gesamten bytecode habe bzw. ob noch irgendwo externe libraries fehlen oder so wo noch bytecode fehlt? Erkennt man das an rufezeichen im eclipse oder so?

Danke!
 

kama

Top Contributor
Hi,
in der settings.xml kann man lediglich weitere Server (Repositories etc.) definieren und auch den Default (Maven Central) überschreiben.

Die Maven Installation liefert eine Super POM mit, in der die Defaults z.B. für Maven Central definiert sind und daher weiss Maven auch wo es Abhängigkeiten herbekommt.

Gruß
Karl Heinz Marbaise
 

martin1989

Aktives Mitglied
Hab bisher genau 12 Java Open Source Projekte ergattert die sowohl source als auch bytecode zur verfügung stellten.

Wenn ich nur den Source Code habe, ist das ByteCode erzeugen wirklich nicht so einach. Auf GitHub und Sourceforce findet man vorwiegend nur source code.

Sollte jemand noch Projekte kennen die ihren Code als Byte und Source zur Verfügung stellen, so wie das hier Twinkle: A SPARQL Query Tool wäre ich froh wenn ihr es einfach kurz posten könntet. danke :)
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
M Open Source Projekte => wo herunterladen? Allgemeine Java-Themen 2
D Open Source Library zum erstellen von PDFs Allgemeine Java-Themen 1
F Open source file übersetzen Phython -> Java Allgemeine Java-Themen 4
J Open Source Projekt anbieten - Leitfaden gesucht Allgemeine Java-Themen 3
E javax.comm: Suche eine open source Alternative zu rxtx Allgemeine Java-Themen 8
Y Open Source Plattformen Allgemeine Java-Themen 4
L Open Source Projekt Allgemeine Java-Themen 7
C Microsoft unterstützt Open JDK Allgemeine Java-Themen 7
ms_cikar JavaOSC (Open Sound Control) Allgemeine Java-Themen 1
Neumi5694 Desktop.getDesktop().open(...); Allgemeine Java-Themen 0
M Umstieg Oracle JDK zu Open JDK Allgemeine Java-Themen 20
E Open Declaration Funktioniert nicht Allgemeine Java-Themen 0
J Druckvorgang mit Java beenden (Open Office) Allgemeine Java-Themen 3
I Javafx Open/Read und Tree Funktion Allgemeine Java-Themen 14
N GPIB - Fehler: Unable to open device Allgemeine Java-Themen 1
G Desktop open() - Problem mit Media Player Allgemeine Java-Themen 4
C Open Soure Projekte für parallele Programmierung Allgemeine Java-Themen 6
K associate collection with two open sessions Allgemeine Java-Themen 12
A Open Office Formeln Allgemeine Java-Themen 7
D Ersetzen in Open Office Dokument Allgemeine Java-Themen 2
A External Sort - too many open files Allgemeine Java-Themen 6
KrokoDiehl Desktop.open() und warten? Allgemeine Java-Themen 3
1 Java <-> Open Office Allgemeine Java-Themen 5
C Desktop.mail Problem. IO Exception: Failed to open. Allgemeine Java-Themen 3
T linux problem mit Desktop.getDesktop().open(..) Allgemeine Java-Themen 5
M bug? datei oeffnen nicht Desktop.open Allgemeine Java-Themen 3
V Probleme mit Desktop.open() ? Allgemeine Java-Themen 7
Daniel_L Fehler in Desktop.getDesktop().open()? Allgemeine Java-Themen 3
J Too many open files Allgemeine Java-Themen 11
Daniel_L Desktop-Api: Problem mit open() und Umlauten Allgemeine Java-Themen 5
V Probleme mit Desktop.open() ? Allgemeine Java-Themen 4
J Too many files open Allgemeine Java-Themen 4
K "Too many open files" bei Property List Allgemeine Java-Themen 5
MasterEvil Open Office Converter Allgemeine Java-Themen 11
C [javax.mail] Folder not open Allgemeine Java-Themen 2
S Runtime exec unter MacOS X will nicht "open pfad" Allgemeine Java-Themen 7
M Runtime.exec() => java.io.exception: too many open files Allgemeine Java-Themen 10
J integration in Open Office Allgemeine Java-Themen 2
G Licence-Header für InHouse entwickelten Source Allgemeine Java-Themen 8
S Class File Editor -> Source not found Allgemeine Java-Themen 4
S Gibt es eigentlich Java Source Code Interpreter..? Allgemeine Java-Themen 13
T Stacktrace zeigt ...(Unknown Source) Allgemeine Java-Themen 10
H Quelltext / Source aus jar Datei rekonstruieren Allgemeine Java-Themen 1
M Source / Binaries plus Bugtracking auf Klassenebene Allgemeine Java-Themen 1
A Methoden Generische Methode mit Arrays - Source Compatibility 1.7 benötigt, wieso? Allgemeine Java-Themen 3
A Source code analyze Allgemeine Java-Themen 8
E NetBeans warning: [options] bootstrap class path not set in conjunction with -source 1.6 Allgemeine Java-Themen 4
B Eclipse Attache source to own jar-files Allgemeine Java-Themen 2
P Java Probleme - java.lang.Thread.run(Unkown Source) Allgemeine Java-Themen 10
J Compiler-Fehler Unknown Source? Allgemeine Java-Themen 4
S Programm das automatisch ungenutzten Source-Code entfernt..? Allgemeine Java-Themen 4
M NOA an den Source Text des Dokumentes kommen Allgemeine Java-Themen 7
E eclipse debugger - Source not found? Allgemeine Java-Themen 1
D Source Code anschauen Allgemeine Java-Themen 6
S java source code Allgemeine Java-Themen 5
N jar 2 source converter Allgemeine Java-Themen 2
aze Source Folder bestimmen Allgemeine Java-Themen 2
N C source to Java Source -> compile java layer? Allgemeine Java-Themen 9
V Source zu Javamail? Allgemeine Java-Themen 2
T JAR mit embedded Source/JavaDoc? Allgemeine Java-Themen 8
hdi Source Code von Sun's Java Klassen Allgemeine Java-Themen 11
musiKk Source der Java API? Allgemeine Java-Themen 2
S einfachen editor für source code Allgemeine Java-Themen 13
S java source code Allgemeine Java-Themen 7
P Source code verloren habe nur noch kompilierte .jar. Allgemeine Java-Themen 12
F "source not found" in eigenem Projekt mit eigenen Allgemeine Java-Themen 2
? jar-Datei to Source-Code? Allgemeine Java-Themen 16
T User-Kennung im Source hinterlegen? Allgemeine Java-Themen 4
I Was ist ein binray / source Build ? Allgemeine Java-Themen 3
M Source Code schützen Allgemeine Java-Themen 5
G Brauche hilfe bei JMF: Wie eigene Streaming Data Source! Allgemeine Java-Themen 4
A Source-Management bei Kunden-Anpassungen Allgemeine Java-Themen 5
L Alle Attribute eines Source-Files auslesen Allgemeine Java-Themen 2
M Source von Java Klassen Allgemeine Java-Themen 2
E Closed Source Programm schuetzen Allgemeine Java-Themen 11
S Änderungen im Source-Code direkt verwenden können? Allgemeine Java-Themen 3
E Source-Code aus einer Textdatei kompilieren und ausführen Allgemeine Java-Themen 4
G Exceptions ohne Zeilennummer (Unknown Source) Allgemeine Java-Themen 8
I Source Code Auswertung - organize imports Allgemeine Java-Themen 2
O Lernen im Team zu arbeiten - Projekte zusammen umsetzen Allgemeine Java-Themen 23
P Projekte entwickeln mit mehreren Personen Allgemeine Java-Themen 1
K Größere Java-Projekte: Struktur Allgemeine Java-Themen 13
S Externe Eclipse Projekte dynamisch einbinden Allgemeine Java-Themen 3
M Methoden/Klassen für andere Projekte Allgemeine Java-Themen 4
R Welche waren eure ersten Projekte? Allgemeine Java-Themen 10
V Eclipse Projekte den BuildPath hinzufügen - Bester Weg? Allgemeine Java-Themen 6
K Eclipse automatisch Projekte cleanen und builden lassen Allgemeine Java-Themen 5
Hotkey Beispiel für grosse Java Projekte Allgemeine Java-Themen 9
E Subversion 2 Projekte Allgemeine Java-Themen 5
P 2 Projekte Allgemeine Java-Themen 2
T Problem: Ein Package für 2 Projekte? Allgemeine Java-Themen 3
R Eigene Konfigurationsdatei für größere Projekte. Allgemeine Java-Themen 4
C Communication zwischen zwei Projekte - static objects Allgemeine Java-Themen 4

Ähnliche Java Themen

Neue Themen


Oben