Gå til innhold

Problemer med java og bluetooth


Anbefalte innlegg

Skrevet

Har starta med hovedprosjektet atm, og første tingen vi skulle fikse var et lite program i java som skulle finne andre bluetooth enheter i nærheten (helt basic greier).

 

Hittil er det dette som er i programmet (har hele programmet, men jeg startet på nytt for å se om jeg kunne finne flere feil)

 

import java.io.*;
import javax.bluetooth.*;
import java.util.*;

public class blatooth implements DiscoveryListener {

// Variabel for å holde styr på synkronisering senere
private static Object lock = new Object();

// Vector med alle devicene som ble funnet
private static Vector vecDevices = new Vector();

private static LocalDevice localDevice;

public static void main(String [] args) throws IOException {

	// En referanse til klassen, brukes for DiscoveryListener senere
	blatooth bt = new blatooth();

	localDevice = null;

	// Henter ut noe info om bluetooth på pcen
	localDevice = LocalDevice.getLocalDevice();

	// Setter bluetooth enheten til doscoverable
	localDevice.setDiscoverable(DiscoveryAgent.GIAC);

	// Skriver ut litt info om bluetooth enheten
	System.out.println("Adresse: " + localDevice.getBluetoothAddress());
	System.out.println("Navn: " + localDevice.getFriendlyName());

}


public void deviceDiscovered(RemoteDevice arg0, DeviceClass arg1) {


}

public void inquiryCompleted(int arg0) {


}

public void serviceSearchCompleted(int arg0, int arg1) {


}

public void servicesDiscovered(int arg0, ServiceRecord[] arg1) {


}
}

 

Koden kompilerer greit, men når den kjøres får jeg denne feilmeldinga

Exception in thread "main" javax.bluetooth.BluetoothStateException: java.lang.NoClassDefFoundError: com/sun/kvem/jsr082/bluetooth/DiscoveryAgentImpl
at javax.bluetooth.LocalDevice.getLocalDevice(LocalDevice.java:100)
at blatooth.main(blatooth.java:22)

 

Snakka en del med veilederen vår og vi fant ut til slutt at det er noe kode i javax.bluetooth.LocalDevice som har kall til klasser eller filer som ikke eksisterer der, nemlig "com/sun/kvem/jsr082/bluetooth/DiscoveryAgentImpl"

 

Så vi fant fram til alle filene som var i denne pakken her , problemet jeg har støtet på nå var å få pakket alle disse filene ned i en brukbar jar fil så de kan brukes til programmet.

 

 

Sitter med Eclipse med EclipseME pluginen og bruker jsr082.jar fila fra WTK22 (wireless toolkitet fra sun).

Videoannonse
Annonse
Skrevet (endret)

Hva var spørsmålet, igjen?

 

Forresten: Alltid, alltid, alltid (dvs. alltid) bruk stor forbokstav i klassenavn. Hvorfor bruker du main-metoden i det hele tatt? Det er jo ikke akkurat OOP-stil. Nå vet jeg ikke hva du prøver å få til her (hvor stort, og hva det skal brukes til), men du vil nok mest sannsynlig ikke bruke den main-metoden der.

 

Begynn heller med å formulere hva du egentlig vil, skriv et (godt dokumentert) interface for det du vil oppnå, implementer klassen og ta den i bruk.

Endret av pgdx

Opprett en konto eller logg inn for å kommentere

Du må være et medlem for å kunne skrive en kommentar

Opprett konto

Det er enkelt å melde seg inn for å starte en ny konto!

Start en konto

Logg inn

Har du allerede en konto? Logg inn her.

Logg inn nå
  • Hvem er aktive   0 medlemmer

    • Ingen innloggede medlemmer aktive
×
×
  • Opprett ny...