[Java] compilatie-probleem, return resultaat methode fout

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • RainerSGF
  • Registratie: Juli 2008
  • Laatst online: 22:27
Ik snap en begrijp er niet veel meer van.
Ik heb zojuist in Debian 6 hier de laatste java-versie (jre en jdk) geïnstalleerd.

Nu ik een java-programma wil runnen krijg ik steeds volgende melding:

Exception in thread "main" java.lang.Error: Unresolved compilation problem:
This method must return a result of type String
at Test1.ReadMails(Test1.java:10)
at Test1.main(Test1.java:47)


Dit terwijl voordien dit programma prima werkte.
Dit programma heb ik laatst gedraaid op een vorig geïnstalleerd systeem waarin
ik niets heb veranderd omtrent de java-versie.

Nu ik zelfs andere code probeer uit te voeren, krijg ik ook deze fout-melding.

basic-voorbeeld van een code waarbij deze melding opkomt:
Java:
1
2
3
4
5
6
7
8
9
10
import java.io.*;

public class Test1 {    
    public static void main (String... aArguments) {
            int i = 1;
            int j = 2;
            int k = i + j;
            System.out.println("result: " + k);             
    }
}


Nu mijn vraag, heb ik iets verkeerd gedaan bij de installatie of
zijn mijn code of programma-instellingen (eclipse) foutief?

Systeem - I'm learning, I learn it from a book :)


Acties:
  • 0 Henk 'm!

  • thvd
  • Registratie: Juni 2009
  • Laatst online: 20:16
Heb je:
Java:
1
public static void main (String... aArguments) { 


ook zo letterlijk? Dus met String...?
Als dat zo is, zal het daar aan liggen..

Acties:
  • 0 Henk 'm!

  • pedorus
  • Registratie: Januari 2008
  • Niet online
Dit programma compileert op jdk7 en jdk6 prima natuurlijk. Echter die foutmeldingen gaan over een ander programma, de regelnummers bestaan niet eens ;)

Welke exacte versie gaat het om? Over welk programma hebben we het? Informatie over deze foutmelding

Vitamine D tekorten in Nederland | Dodelijk coronaforum gesloten


Acties:
  • 0 Henk 'm!

  • ReenL
  • Registratie: Augustus 2010
  • Laatst online: 14-09-2022
Test1.ReadMails(Test1.java:10)
Zou een string moeten returnen, maar doet dat niet.

Acties:
  • 0 Henk 'm!

  • RainerSGF
  • Registratie: Juli 2008
  • Laatst online: 22:27
Aha, k'ben al iets verder gekomen.
Blijkbaar moest ik verder zoeken in de 'run configurations' van Eclipse.

@pedorus: idd, die regelnummers konden al niet kloppen. Blijkbaar was er in de configuratie een naam achtergebleven van een vorig programma. Dank u.

Systeem - I'm learning, I learn it from a book :)


Acties:
  • 0 Henk 'm!

  • YopY
  • Registratie: September 2003
  • Laatst online: 13-07 01:14
thvd schreef op dinsdag 27 december 2011 @ 23:42:
Heb je:
Java:
1
public static void main (String... aArguments) { 


ook zo letterlijk? Dus met String...?
Als dat zo is, zal het daar aan liggen..
Denk het niet: de varargs syntax (sinds Java 5) in een methode-definitie is stiekem gewoon syntactische suiker voor een methode die een array van dat type (in dit geval String) accepteert. Aanroepen naar een functie met varargs worden ook gewoon daarnaartoe geconverteerd door een compiler. De bytecode voor main(String[] args) en main(String... args) is dan ook exact hetzelfde.

@TS: probeer eens een 'clean' actie te doen, weet zo uit mijn hoofd niet meer onder wel menu-item dat zit. Lijkt erop (uit de voorgaande posts) dat je Eclipse het niet helemaal meer snapt. Zeker als je het uit een andere versie geïmporteerd hebt. Kijk ook of de JRE / JDK die Eclipse gebruikt wel dezelfde is als je geïnstalleerd hebt in Debian.
Pagina: 1