Avatar billede heeris Nybegynder
17. september 2005 - 19:46 Der er 19 kommentarer og
1 løsning

Scanner class i JDK 1.5 beta virker ikke i jBuilder X

Har netop installeret JDK 1.5 beta for at få adgang til klassen Scanner.
I J Builder X kan jeg finde Scanner via API'en (java.util.Scanner), men den kommer aligevel med denne fejl ved kompilering:

"Untitled1.java": cannot access java.util.Scanner,bad class file: C:\Programmer\Java\jdk1.5.0_05\jre\lib\rt.jar\java\util\Scanner.class,class file has wrong version 49.0, should be 48.0,Please remove or make sure it appears in the correct subdirectory of the classpath. at line 3, column 18

koden ser således ud:
------------------------------
package shcool;

import java.util.Scanner;

public class Q3_1
{
    public static void main (String[] args)
    {
        int intX1, intY1, intX2, intY2;
        double douDistance;

        Scanner objScan = Scanner (System.in);

        System.out.print ("Enter the coordinate of x1: ");
        intX1 = objScan.nextInt();
        System.out.print ("Enter the coordinate of y1: ");
        intY1 = objScan.nextInt();

        System.out.print ("Enter the coordinate of x2: ");
        intX2 = objScan.nextInt();
        System.out.print ("Enter the coordinate of y2: ");
        intY2 = objScan.nextInt();


        douDistance = Math.sqrt(Math.pow((intX2 - intX1), 2) + Math.pow((intY2 - intY1), 2));

        System.out.println (douDistance);
    }
}

--------------------------------------
(tabuleringen blev smadret da jeg pastede det ind her, sry.)


Nogen forslag?
Avatar billede arne_v Ekspert
17. september 2005 - 19:56 #1
du har ikke fået skiftet JDK inde i JBuilder korrekt
Avatar billede heeris Nybegynder
17. september 2005 - 20:16 #2
Du har meget vel fat i noget.

Jeg har valgt JDK 1.5 i PATHS, i project properties.

Det er det eneste sted jeg har henvist til 1.5.

Har brugt JBuilder i en uge, og har ikke før ændret de instillinger der var efter installationen.

Er der flere steder i JBX hvor jeg skal henvise til JDK 1.5 ?
Avatar billede arne_v Ekspert
17. september 2005 - 20:19 #3
project
properties
paths
JDK

er det rigtige sted

hvis du laver et simpelt program som udskriver java version, hvad får du så ?
Avatar billede heeris Nybegynder
17. september 2005 - 20:31 #4
der må jeg melde pas.

Er nybegynder i Java.

Vores lære har henvist til JDK 1.5 da den indeholder nogle klasser han vil bruge/bruger i sin undervisning.

Jeg er på det stadie hvor jeg kan skive forskellige ting ud, og udføre simple matematiske udregninger. Det viser den kode jeg har pastet måske også.

Hvis du kunne sende den nødvendige kode ville jeg være taknemlig.

Jeg ved det kan være ireterende at forklare ting til nybegyndere, så jeg beder om din forståelse.
Avatar billede arne_v Ekspert
17. september 2005 - 20:34 #5
public class Version {
    public static void main(String[] args) {
        System.out.println(System.getProperty("java.vm.version"));
    }
}
Avatar billede heeris Nybegynder
17. september 2005 - 20:57 #6
jeg for denne besked ved kompilering:

"Version.java": cannot access java.lang.Object,bad class file: C:\Programmer\Java\jdk1.5.0_05\jre\lib\rt.jar\java\lang\Object.class,class file has wrong version 49.0, should be 48.0,Please remove or make sure it appears in the correct subdirectory of the classpath. at line 4, column 29


Jeg er nød til at løbe nu, desvære. Jeg vil være tilbage imorgen så tidligt jeg kan være her.

Du skal ha tak for hjælpen idag :)
Avatar billede heeris Nybegynder
18. september 2005 - 14:33 #7
Undskyld det har taget så lang tid, har været optaget.

Jeg har installeret freeware versionen af JCreator, sat den op til jdk 1.5, og kørt dit program der viser version. den spytter dette ud:

1.5.0_05-b05

hvilken så også betyder at jeg kan køre dit program med JCreater, men ikke i Jbuilder, der for jeg beskeden du ser i kommentaren oven over.

Prøvede så at kompilere programmet med Scanner klassen, og fik følgene fejl af JCreator:

--------------------Configuration: school - JDK version 1.5.0_05 <Default> - <Default>--------------------
C:\Programmer\Xinox Software\JCreatorV3LE\MyProjects\school\src\Q3_1.java:10: cannot find symbol
symbol  : method Scanner(java.io.InputStream)
location: class Q3_1
                Scanner objScan = Scanner (System.in);
                                  ^
1 error

Process completed.

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

Det forvire mig meget at Scanner klassen ikke bliver genkedt, idet JBuilder kan forslå at skrive netop "Scanner" når jeg skriver "java.util."
Avatar billede heeris Nybegynder
18. september 2005 - 14:50 #8
Har lige opdaget en pinlig fejl,

jeg glemmer at skrive "new" når jeg laver mit scanner objekt

skriver:  Scanner objScan = Scanner (System.in);
skulle have skrevet: Scanner objScan = new Scanner (System.in);

Det løser problemt for JCreator, og programmet can køres uden problemer.

JBuilder er imidlertid stadig ligeglad, og fortæller mig stadig at versionen af klassen er 49, men burde være 48 (whatever that means).

Sorry for den lille fejl, trods det var det ikke det der løste problemt for JBuilder.
Avatar billede simonvalter Praktikant
18. september 2005 - 15:57 #9
ud over at have tilføjet en Java SE 5 JDK som arne siger så prøv:
project->project properties->build->java
sæt language features og target vm til Java SE 5
Avatar billede heeris Nybegynder
18. september 2005 - 16:42 #10
jeg kan still på Compiler, Debug options, og Target VM, i det menupunkt, så language features kan jeg ikke se.

men interesant nok så lader det til at jeg ikke kan vælge Java SE 5, men derimod disse 4:

- All Java SDKs
- Java 2 SDK, v1.2 and later
- Java 2 SDK, v1.3 and later
- Java 2 SDK, v1.4 and later
Avatar billede heeris Nybegynder
18. september 2005 - 16:43 #11
sry, jeg mente:

men interesant nok så lader det til at jeg ikke kan vælge Java SE 5 i "target vm", men derimod disse 4:
Avatar billede simonvalter Praktikant
18. september 2005 - 17:14 #12
Ok det er selvfølgelig først en mulighed fra Jbuilder 2006
jeg har prøvet og se om jeg kan sætte argumentet ind i bcj/bmj.conf men det er den ligeglad med.

Så tror jeg din eneste mulighed er at hente denne eller opgradere.
http://codecentral.borland.com/Item.aspx?id=21447
Avatar billede simonvalter Praktikant
18. september 2005 - 17:20 #13
eller hop på eclipse,netbeans,jcreator..
Avatar billede heeris Nybegynder
18. september 2005 - 17:52 #14
dit link resultere i en fejlmeddelse, men jeg tror jeg vil begynde at bruge JCreator ind til en eller anden kan fotælle mig hvad jeg gør galt med Jbuilder.

smid et svar, i to, så skal i få noget for hjælpen.

Konklusionen må være:
  Problem ikke løst!
Avatar billede simonvalter Praktikant
18. september 2005 - 18:16 #15
ok

kan nu ikke se noget problem med linket
søg evt efter "JDK 5.0/1.5 Language Extension Compiler Support"
det er er borland opentools det ligger under... men selv om du får den til at compile vil det ikke være en særlig optimal løsning da der stadig vil være ting som ikke virker som f.eks debugging.
Avatar billede heeris Nybegynder
18. september 2005 - 19:10 #16
oki, tak for det hele.

Jeg vil vende tilbage til min kode :)
Avatar billede heeris Nybegynder
18. september 2005 - 19:11 #17
.
Avatar billede heeris Nybegynder
18. september 2005 - 19:11 #18
hmm der sker ik noget når jeg acceptere?!
Avatar billede heeris Nybegynder
18. september 2005 - 19:12 #19
der kom den :)
Avatar billede arne_v Ekspert
24. september 2005 - 00:06 #20
hm

jeg kan sagtens bruge Scanner klassen i min JB EE 2005
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