Avatar billede godzs Nybegynder
19. marts 2004 - 20:48 Der er 26 kommentarer og
1 løsning

Database forbindelse

Hej

Er relativt ny i programmering....
Når jeg skal have mit min java klasse til at oprette forbindelse til min postgresql database kommer den med en fejl som er følgende:

java.lang.NoClassDefFoundError: C:\kursister/java
Exception in thread "main"

Hvad kan det skyldes? er der noget jeg har glemt at sætte op. Det skal lige siges at databasen virker fint alene.
Avatar billede arne_v Ekspert
19. marts 2004 - 21:01 #1
Jeg tror at du starter dit program forkert.

Må vi se kommandoen du bruger ?
Avatar billede godzs Nybegynder
19. marts 2004 - 21:03 #2
import java.sql.*;
public class kursister
{
    public static void main (String[] args) throws Exception
    {
        //load driveren
        Class.forName("org.postgresql.Driver");
        //org.postgresql.Driver dr= new org.postgresql.Driver();
        //DriverManager.registerDriver(dr);

        //opret forbindelse til databasen "minDB"
        Connection con= DriverManager.getConnection("jdbc:postgresql://localhost/minDB","morten","");
Avatar billede arne_v Ekspert
19. marts 2004 - 21:05 #3
Det er din kode - den ser OK ud.

Men hvordan kører du dit program ? Hvilken kommando starter du det med ?
Avatar billede godzs Nybegynder
19. marts 2004 - 21:06 #4
bruger TextPad og starter det derfra
Avatar billede arne_v Ekspert
19. marts 2004 - 21:07 #5
Ovenstående fejl skyldes måde det startes på ikke koden selv.

Prøv at åben en DOS box og gå til directory og skriv:

javac kursister.java
java kursister
Avatar billede arne_v Ekspert
19. marts 2004 - 21:08 #6
(man plejer iøvrigt altid at lade klasse navne starte med stort bogstav, men
det har ikke noget med dit problem at gøre)
Avatar billede godzs Nybegynder
19. marts 2004 - 21:11 #7
Når jeg skriver javac ......java siger de: cannot read class kursister.
Og
Når jeg skriver java kursister siger den samme fejl som i textpad
Avatar billede arne_v Ekspert
19. marts 2004 - 21:13 #8
Hedder filen kursister.java ?
Avatar billede godzs Nybegynder
19. marts 2004 - 21:13 #9
ok vidste jeg godt.. det er ikke mmig der  har lavet eksemplet:-)
Avatar billede godzs Nybegynder
19. marts 2004 - 21:13 #10
ja
Avatar billede arne_v Ekspert
19. marts 2004 - 21:14 #11
Då står i det directory hvor kursuster.java ligger
og skriver:

javac kursister.java

og den giver fejl "cannot read class kursister" ?
Avatar billede godzs Nybegynder
19. marts 2004 - 21:18 #12
nej min fejl.. den compiler det men når jeg bagefter skriver kursister.java så skriver den :Exception in thread "main" javaLangNoClassDefFounderror: kursister
Avatar billede arne_v Ekspert
19. marts 2004 - 21:21 #13
Prøv med:

java -classpath . kursister
Avatar billede godzs Nybegynder
19. marts 2004 - 21:23 #14
så skriver den det samme men efter DefFoundError skriver den: org.postgresql.Driver
Avatar billede godzs Nybegynder
19. marts 2004 - 21:25 #15
den skriver også en lang smøre vil du også have det
Avatar billede arne_v Ekspert
19. marts 2004 - 21:26 #16
Ikke nødvendigt - vi er nemlig på rette spor nu.

java -classpath .;C:\dir\pgdriver.jar kursister

C:\dir\pgdriver.jar skal erstattes med den faktisk sti til din JDBC driver jar fil.
Avatar billede godzs Nybegynder
19. marts 2004 - 21:30 #17
altså den lægger på denne sti C:\pgsql\pg72jdbc2.jar
også skal den se hvordan ud... inde i miljøvariabler...
Avatar billede arne_v Ekspert
19. marts 2004 - 21:32 #18
Hvis:

java -classpath .;C:\pgsql\pg72jdbc2.jar kursister

virker, så kan du begynde at overveje hvad du vil gøre for at gøre det nemt.
Avatar billede arne_v Ekspert
19. marts 2004 - 21:32 #19
Men at definere CLASSPATH miljå variabel til:

.;C:\pgsql\pg72jdbc2.jar

ver ihvertfald en mulighed.
Avatar billede godzs Nybegynder
19. marts 2004 - 21:38 #20
min classpath ser sådan ud c:\pgsql\pg72jdbc2.jar;c:\junit3.8.1\junit.jar

men når jeg skriver java kursister igen så siger den samme fejl som før
Avatar billede arne_v Ekspert
19. marts 2004 - 21:43 #21
Tilføj punktummet

.;c:\pgsql\pg72jdbc2.jar;c:\junit3.8.1\junit.jar
Avatar billede godzs Nybegynder
19. marts 2004 - 21:46 #22
samme fejl stadig
Avatar billede godzs Nybegynder
19. marts 2004 - 21:53 #23
ok nu fortår jeg, jeg har vist misforstået dig.. det virker nu... kan man ikke sætte det sådan at man kan køre det fra f.eks. jbuilder eller textpad
Avatar billede arne_v Ekspert
19. marts 2004 - 21:54 #24
Textpad ved jeg ikke hvordan men JBuilder burde være nemt.
Avatar billede arne_v Ekspert
19. marts 2004 - 21:56 #25
project
project properties
paths
required libraries
add
new
library path add
Avatar billede godzs Nybegynder
19. marts 2004 - 21:57 #26
takker for hjælpen det virker nu
Avatar billede arne_v Ekspert
19. marts 2004 - 21:59 #27
så vil jeg ligge et svar
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