[java] Borland .jar gebruiken zonder JBuilder?

Pagina: 1
Acties:

  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Misschien een hele domme vraag (naja domme vragen bestaan niet :+).

We moeten voor school een projectje maken. Nu heb ik met JBuilder een 'mooie' GUI gemaakt met een XYLayout. Deze zit in jbdc.jar

Wanneer ik deze code probeer te compileren op een andere pc zonder JBuilder, geeft ie allerlei errors, omdat XYLayout niet kan laden :( Ik heb de jbdc.jar al gecopyed naar m'n jre\lib directory, maar zonder succes :(

Hoe zorg ik ervoor dat dit wel gaat werken?

webOS all the way!


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

klik ;)

En je moet er voor zorgen dat deze jar in je class path komt te staan. Ik doe dit via een bat file:
code:
1
2
3
4
5
6
7
8
set path=%path%;C:\Program Files\Java\j2re1.4.0-beta3\bin\

set classpath=lib\antlr.jar
set classpath=%classpath%;lib\jconn2.jar
set classpath=%classpath%;lib\jdom.jar
set classpath=%classpath%;lib\XYLayout.jar

java com.jph.blaat.Main

  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Als je de jar altijd in de runtime beschikbaar wilt hebben moet je hem in SDK_ROOT/jre/lib/ext zetten.

Je kan echter ook gewoon zorgen dat je applicatie op andere manier gestart wordt met deze jar op de CLASSPATH. Voorbeelden:

1) batch bestand/shell script waarbij je de classpath meegeeft een het Java comando.
2) Executable jar met Class-Path in Manifest
3) Java Web Start, waarbij je in de JNLP specificatie de
benodigde jars kunt aangeven.
4) CLASSPATH gewoon globaal instellen en daarin de jar opnemen die ergens op schijf staat.
5) Eigen classloader ;) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Thanx ik ga het m'n projectgenoten ff laten proberen :)

webOS all the way!


  • mbravenboer
  • Registratie: Januari 2000
  • Laatst online: 06-11-2025
Hermanvh: Thanx ik ga het m'n projectgenoten ff laten proberen :)
Heel goed 8-) . Je moet jong beginnen met delegeren ;) .

Blog, Stratego/XT: Program Transformation, SDF: Syntax Definition, Nix: Software Deployment


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Op donderdag 27 juni 2002 00:02 schreef mbravenboer het volgende:

[..]

Heel goed 8-) . Je moet jong beginnen met delegeren ;) .
In het land der blinden is eenoog koning ;)

  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
De XYLayout problemen zijn opgelost :) (Gewoon ff jbdc.jar in jre\lib\ext geplaatst).

Nu lopen we tegen een ander vaag probleem aan. Alles compiled ok in Jbuilder en loopt ook, maar met gewone command line compiler (javac) geeft ie de volgende errors:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package goudseschouwburg;

import javax.swing.UIManager;
import java.awt.*;

/**
 * <p>Title: De Goudse Schouwburg 2002</p>
 * <p>Description: De Goudse Schouwburg 2002</p>
 * <p>Copyright: Copyright (c) 2002</p>
 * <p>Company: Team 18</p>
 * @author 
 * @version 1.0
 */

public class GoudseSchouwburg1 {
  boolean packFrame = false;

  //Construct the application
  public GoudseSchouwburg1() {
    KeuzeScherm frame = new KeuzeScherm();
    //Validate frames that have preset sizes
    //Pack frames that have useful preferred size info, e.g. from their layout
    if (packFrame) {
    frame.pack();
    }
    else {
    frame.validate();
    }
    //Center the window
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    Dimension frameSize = frame.getSize();
    if (frameSize.height > screenSize.height) {
    frameSize.height = screenSize.height;
    }
    if (frameSize.width > screenSize.width) {
    frameSize.width = screenSize.width;
    }
    frame.setLocation((screenSize.width - frameSize.width) / 2, (screenSize.height - frameSize.height) / 2);
    frame.setVisible(true);
  }
  //Main method
  public static void main(String[] args) {
    try {
    UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
    }
    catch(Exception e) {
    e.printStackTrace();
    }
    new GoudseSchouwburg1();
  }
}


code:
1
2
3
4
5
6
7
8
9
10
11
12
13
C:\goudseschouwburg\GoudseSchouwburg1.java:20: cannot resolve symbol
symbol  : class KeuzeScherm  
location: class goudseschouwburg.GoudseSchouwburg1
    KeuzeScherm frame = new KeuzeScherm();
    ^
C:\goudseschouwburg\GoudseSchouwburg1.java:20: cannot resolve symbol
symbol  : class KeuzeScherm  
location: class goudseschouwburg.GoudseSchouwburg1
    KeuzeScherm frame = new KeuzeScherm();
                    ^
2 errors

Tool completed with exit code 1

We gebruiken TextPad als editor met de laatste JRE en SDK van Sun.com.

Iemand een oplossing?

webOS all the way!


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Je moet 1 directory terug gaan, en dan nog eens proberen :) Je kan er trouwens veel beter even een jar van maken. Een enorme boerenkinkel methode (maar werkt wel) is gewoon ff dir inzippen, en dat ff renamen :D (jar = gewoon zip).

  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Op donderdag 27 juni 2002 14:45 schreef Alarmnummer het volgende:
Je moet 1 directory terug gaan, en dan nog eens proberen :) Je kan er trouwens veel beter even een jar van maken. Een enorme boerenkinkel methode (maar werkt wel) is gewoon ff dir inzippen, en dat ff renamen :D (jar = gewoon zip).
Sorry, deze snap ik even niet :( Zou je het iets gedetaileerder kunnen uitleggen?

Die GoudseSchouwburg1.java is dus de eigenlijke code. Het probleem met de .jar is opgelost.

webOS all the way!


  • drice
  • Registratie: December 2000
  • Laatst online: 16:10

drice

Loading...

Goh je zit zeker op HvU informatica

Did you know that IF is a middle word in life. "Ja maar wie ben ik om aan mezelf te twijfelen"


  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Op donderdag 27 juni 2002 16:22 schreef drice het volgende:
Goh je zit zeker op HvU informatica
Yep en ik mag van onze grote vriend Arie weer ff wat in elkaar toveren ;)

webOS all the way!


  • pagani
  • Registratie: Januari 2002
  • Niet online
En Arie is blij met een xy layout? (Ik werd er nogal op afgestraft op de hts aangezien het een specifieke uitbreiding van Borland is en dus niet zo is als java bedoeld is).

  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Op donderdag 27 juni 2002 18:21 schreef johnnyv.nl het volgende:
En Arie is blij met een xy layout? (Ik werd er nogal op afgestraft op de hts aangezien het een specifieke uitbreiding van Borland is en dus niet zo is als java bedoeld is).
GUI boeit m niet, als de database e.d. maar werken.... XYLayout vind ik het fijnste werken :)

webOS all the way!


Verwijderd

Bij verdere problemen met die XYLayout:

gebruik hem niet...
Klinkt een beetje loos, maar doe het volgende:
code:
1
this.setContentPane(null);

Dit als je die XYLayout dus als ContentPane gebruikt. :P
Op deze manier kan je ook gewoon je objectjes op de pixel precies neerzetten...

  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Op donderdag 27 juni 2002 22:00 schreef Jappie het volgende:
Bij verdere problemen met die XYLayout:

gebruik hem niet...
Klinkt een beetje loos, maar doe het volgende:
code:
1
this.setContentPane(null);

Dit als je die XYLayout dus als ContentPane gebruikt. :P
Op deze manier kan je ook gewoon je objectjes op de pixel precies neerzetten...
Volgens mij is slap gelul.

Wat jij bedoelt is .setLayout(null). Je zet dan de layout manager uit, en dan kan je inderdaad met setBounds grafische objecten plaatsen. Verder wil je zeker je content pane niet op null zetten (heeft een Scherm geen container om zijn child components in te plaatsen). En een XYLaout is geen grafische component, dus geen container, dus je kan hem niet als contentPane gebruiken. En het probleem aan een 'null' Layout tov een XYLayout is dat een XYLayout oa wel zijn prefered size kan bepalen.

  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Zou het weer een beetje on-topic kunnen? De problemen lijken mij niet veroorzaakt te worden door de layout. Alle Borland JAR files staan nl in de jre\lib\ext directory en XYLayout geeft geen problemen meer.

Iemand een oplossing voor m'n errors? Ik krijg ze er gewoon niet uit :( Ik kijk er vast over heen met m'n stomme kop :Z

Zal wel een } of ; zijn die verkeerd staat :(

webOS all the way!


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Zoals ik al zei sta je in de verkeerde dir te compileren. Je moet 1 directory lager gaan staan en dan compileren.
dus javac.exe goudseschouwburg\GoudseSchouwburg1.java

  • Bobco
  • Registratie: Januari 2001
  • Laatst online: 30-10-2023

Bobco

I used to dream about Verona.

Op donderdag 27 juni 2002 14:33 schreef Hermanvh het volgende:
code:
1
2
3
4
5
6
7
8
9
C:\goudseschouwburg\GoudseSchouwburg1.java:20: cannot resolve symbol
symbol  : class KeuzeScherm  
location: class goudseschouwburg.GoudseSchouwburg1
    KeuzeScherm frame = new KeuzeScherm();
    ^
C:\goudseschouwburg\GoudseSchouwburg1.java:20: cannot resolve symbol
symbol  : class KeuzeScherm  
location: class goudseschouwburg.GoudseSchouwburg1
    KeuzeScherm frame = new KeuzeScherm();
Lijkt me toch vrij duidelijk: Can not resolve symbol betekent dat de compiler geen definitie kan vinden van wat jij met KeuzeScherm bedoeld. Deze class definitie moet in hetzelfde package staan als deze de class GoudseSchouwburg1, als ik de import statements mag geloven. Kortom, staat er wel een file KeuzeScherm.java in dezelfde directory als GoudseSchouwburg1.java?

With the light in our eyes, it's hard to see.


  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Op vrijdag 28 juni 2002 09:47 schreef Alarmnummer het volgende:
Zoals ik al zei sta je in de verkeerde dir te compileren. Je moet 1 directory lager gaan staan en dan compileren.
dus javac.exe goudseschouwburg\GoudseSchouwburg1.java
Idd dat werkt :) Maar hoe pas ik dit nu makkelijk aan, zodat ie het vanuit m'n TextPad wel direct doet?

webOS all the way!


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Op vrijdag 28 juni 2002 10:57 schreef Hermanvh het volgende:

[..]

Idd dat werkt :) Maar hoe pas ik dit nu makkelijk aan, zodat ie het vanuit m'n TextPad wel direct doet?
Hmmzzz.. dan moet je eigelijk een root dir hebben (dir waarin javac opgestart moet worden) en dan relatieve file verwijzingen gebruiken. Maar waarom wil je op deze spartaanse manier werken? (niet dat je er niet iets van opsteekt). Maar er zijn genoeg IDE`s te krijgen.

Ik gebruik zelf IDEA. Maar je kan ook gaan voor CodeGuide gaan of voor Jext. En er zijn nog tientallen andere IDE`s. Maar persoonlijk vind ik de eerste echt het aller beste.

Oja.. Eclipse. Dit is een groot open source project van IBM die gebruikt maakt van SWT (super snelle gui voor java). Ik vind het nog een beetje kaal, maar het is natuurlijk 100x zo geavanceerd als TextPad :D

  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Ik zou toch ook gewoon de
code:
1
package goudseschouwburg

weg kunnen halen? Of brengt dit andere grote problemen met zich mee?

webOS all the way!


  • Alarmnummer
  • Registratie: Juli 2001
  • Laatst online: 09-07-2024

Alarmnummer

-= Tja =-

Op vrijdag 28 juni 2002 16:07 schreef Hermanvh het volgende:
Ik zou toch ook gewoon de
code:
1
package goudseschouwburg

weg kunnen halen? Of brengt dit andere grote problemen met zich mee?
Als jij vanuit TextPad wilt compileren, heb je wel 'complexe' commando`s nodig. En het probleem is dus of TextPad wel die complexe commando`s kan maken. Dus werken met een rootdir en met relatieve file verwijzingen.

  • Hermanvh
  • Registratie: Januari 2001
  • Laatst online: 17-03 10:14

Hermanvh

webOS fan, hacker, developer

Topicstarter
Op vrijdag 28 juni 2002 17:07 schreef Alarmnummer het volgende:

[..]

Als jij vanuit TextPad wilt compileren, heb je wel 'complexe' commando`s nodig. En het probleem is dus of TextPad wel die complexe commando`s kan maken. Dus werken met een rootdir en met relatieve file verwijzingen.
Werkt goed zonder de package code :)

webOS all the way!


  • Glimi
  • Registratie: Augustus 2000
  • Niet online

Glimi

Designer Drugs

(overleden)
Op maandag 01 juli 2002 07:55 schreef Hermanvh het volgende:

[..]

Werkt goed zonder de package code :)
Jij wilt niet al je brouwsels zonder packages gaan maken :) Dan krijg je me toch een klerechaos binnekort :)

  • wasigh
  • Registratie: Januari 2001
  • Niet online

wasigh

wasigh.blogspot.com

als je geen package insteld werk je in de defaultpackage en dat kan hele vreemde problemen opleveren.
Pagina: 1