Avatar billede hotmoller Nybegynder
31. marts 2004 - 15:34 Der er 12 kommentarer og
2 løsninger

Problemer med pakker og classpath

Hej eksperter.

Først et stort undskyld for at stille det spørgsmål nok en gang.

Jeg roder med at få sat min classpath, så jeg kan få adgang til en mysql database fra java, og er i denne sammenhæng kommet i problemer.

Jeg har forsøgt at lave et helt simpelt eks., hvor jeg importerer en hjemmelavet pakke ind i et program, men kan ikke få dette til at virke - og jeg forstpr ikke hvorfor :(

Jeg kører winxp og har sat min classpath til følgende under milj;variable:

Variabelnavn: ClassPath

Variabelværdi: .C:\packages


Som det bør fremgå, har jeg oprettet mappen "packages", hvori jeg har tænkt mig at placere mine pakker

------------

//Min klasse der placeres i pakken, ser ud som følger:

package de.derdres;

public class Test2{

    public Test2(){

        System.out.println("er inde i pakken nu");

    }

}

// kompileres vha: javac -d c:\packages Test2.java

-------------------------

// klassen der indeholder main og som forsøger at importe

import de.derdres.*;

public class TestingTest{

    public static void main(String [] args){

        System.out.println("er nu i testingtest klassen inden kald til test");

        Test2 test = new Test2();

        System.out.println("lige efter kald til test");
       

    }

}

// kompileres vha. : javac TestingTest.java

-------------------

jeg får følgende fejbesked, der tyder på at min CP er sat forkert, da både mapperne "de" og "dres" er blevet genereret, samt at filen Test2.class ligger i mappen dres:

"TestingTest.java:1: package de.derdres does not exist"


Nogle gode råd ?!
Avatar billede rasmusbg Nybegynder
31. marts 2004 - 15:43 #1
Jeg aner ikke om det betyder noget, men prøv at brug udelukkende store bogstaver i variabelnavnet, altså CLASSPATH :o)
Avatar billede arne_v Ekspert
31. marts 2004 - 15:44 #2
C:\packages\de\derdres\Test.java
C:\packages\TestingTest.java

C:\packages\de\derdres> javac *.java

C:\packages> javac -classpath C:\packages *.java

C:\packages> java -classpath C:\packages TestingTest

bør virke !
Avatar billede arne_v Ekspert
31. marts 2004 - 15:45 #3
(jeg fraråder normalt at bruge CLASSPATH environment variabel, det kan påvirke
mere end man tror, -classpath på javac/java kommandoen er meget mere
begrænset i scrope)
Avatar billede hotmoller Nybegynder
31. marts 2004 - 16:04 #4
Hej tak for svar.

Jeg har valgt at følge dit eks. arne, og det virker perfekt. Hvis nu jeg arbejder i Eclipse, hvordan overfører jeg så denne tankegang med at undgå brugen af enviroment variabel?!
Avatar billede hotmoller Nybegynder
31. marts 2004 - 16:09 #5
Det er egentligt oprindeligt var i gang med, var at forsøge at skabe forbindelse mellem java og mysql. Jeg har læst flere anvisninger omkring dette, hvor det anbefales at man "adder" mysql jdbc-driveren til classpath. Vil du fraråde dette approach, og hvis ja, skal jeg så følge ovenstående principper, eller er det andre ting der gør sig gældende her.

På forhånd tak
Avatar billede arne_v Ekspert
31. marts 2004 - 16:25 #6
Jeg vil igen tilføje MySQL til den specifikke classpath altså:

java -classpath C:\projekt;C:\dir\mysqljdbc.jar HovedKlasse
Avatar billede arne_v Ekspert
31. marts 2004 - 16:29 #7
Ja - du kan lave det samme i Eclipse.

projekt
File
Properties
Java Build Path
Libraries
Add External Jar
Avatar billede arne_v Ekspert
31. marts 2004 - 16:30 #8
[et dir skal tilføjes med advanced]
Avatar billede hotmoller Nybegynder
31. marts 2004 - 16:40 #9
Hej arne.

Tak for hjælpen det vil jeg prøve :)

Smid begge svar, så I kan få jeres point.

mvh/ moller
Avatar billede arne_v Ekspert
31. marts 2004 - 16:46 #10
svar
Avatar billede rasmusbg Nybegynder
31. marts 2004 - 23:03 #11
Okay, men giv flest point til Arne :o)
Avatar billede arne_v Ekspert
24. april 2004 - 18:15 #12
Tid at få afsluttet spørgsmålet ?
Avatar billede arne_v Ekspert
22. august 2004 - 23:27 #13
??
Avatar billede hotmoller Nybegynder
15. februar 2005 - 21:43 #14
Ej hvor er det utroligt pinligt..... undskyld
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester