Avatar billede obele Nybegynder
03. juni 2001 - 15:34 Der er 16 kommentarer og
1 løsning

Java i emacs

I Win2000 har jeg installeret forte til java, og java SDK.

Jeg har fået editoren emacs, som jeg gerne vil prøve
at bruge til at compilere javakode. Når jeg skriver et  java program i emacs og compilere,  beder
emacs efterfølgende om en compilerings kommando i  kommandolinien i emacs.

Probleme er, at jeg ikke ved hvad jeg videre skal gøre, for compilere javakode i emacs i Win2000?


Hilsen
obele
Avatar billede mpultz Nybegynder
03. juni 2001 - 15:52 #1
Hvis det bare er stien til oversætteren du mangler så er den C:\\<sti til jdk>\\bin\\javac
Avatar billede obele Nybegynder
03. juni 2001 - 21:13 #2
Det lyder korrekt, men når åbner mit java program
\"sum\" compilere det i emacs, og skriver compile kommand: D:\\jdk1.3\\bin\\javac

Skriver emacs:
Compilation exited abnormally with code 2 at Wed Jun 03 21:19:03?

Jeg ved ikke om jeg skal angive filnavnet sum
på min java program et eller andet sted?

Venlig hilsen
Thomas Obele Nwosu
Avatar billede rasmusw Nybegynder
05. juni 2001 - 14:34 #3
får du slet ikke flere informationer fra emacs?
Avatar billede obele Nybegynder
05. juni 2001 - 14:38 #4
Jo det gør jeg, og dem sender jeg lige ind.
Avatar billede obele Nybegynder
05. juni 2001 - 14:51 #5
Fuld fejlmeddelse:
cd d:/Programmer/emacs-20.7/bin/
D:\\jdk1.3\\bin\\javac
Usage: javac <options> <source files>
where possible options include:
  -g                        Generate all debugging info
  -g:none                  Generate no debugging info
  -g:{lines,vars,source}    Generate only some debugging info
  -O                        Optimize; may hinder debugging or enlarge class file
  -nowarn                  Generate no warnings
  -verbose                  Output messages about what the compiler is doing
  -deprecation              Output source locations where deprecated APIs are used
  -classpath <path>        Specify where to find user class files
  -sourcepath <path>        Specify where to find input source files
  -bootclasspath <path>    Override location of bootstrap class files
  -extdirs <dirs>          Override location of installed extensions
  -d <directory>            Specify where to place generated class files
  -encoding <encoding>      Specify character encoding used by source files
  -target <release>        Generate class files for specific VM version


Compilation exited abnormally with code 2 at Fri Jun 05 15:00:54
Avatar billede mpultz Nybegynder
05. juni 2001 - 23:51 #6
Har du prøvet med \"D:\\jdk1.3\\bin\\javac *.java\"?  Det er komamndoen til at få oversat alle .java filer i det aktuelle bibliotek.
Avatar billede logical Nybegynder
06. juni 2001 - 03:50 #7
Til Emacs hoerer der en raekke funktioner til brug ved javaudvikling i en pakke, som hedder JDE. Den skulle ligge ude paa nettet et sted.

Mht. fejlmeddelsen, saa faar du kaldt compileren godt nok, men du mangler at give den argument med til hvilken fil, der skal anvendes. Jeg kan ikke lige huske syntaksen i hovedet, men med JDE vil det vaere sat op automatisk.

PS undskyld jeg ikke bruger ae, oe og aa ordentligt, jeg har dem ikke her
Avatar billede obele Nybegynder
06. juni 2001 - 12:26 #8
Den er næsten ved at være der.
Nu er der kun en fejl?

Fejlmeddelse:
cd d:/Programmer/emacs-20.7/bin/
D:\\jdk1.3\\bin\\javac  *.java ( også ved sum.java mit filnavn).
error: cannot read: *.java
1 error

Compilation exited abnormally with code 1 at Sat Jun 06 12:34:31
Avatar billede mpultz Nybegynder
06. juni 2001 - 16:40 #9
Ligger din sum.java i \"d:/Programmer/emacs-20.7/bin/\"? Hvis ikke så start emacs fra det bibliotek hvori sum.java ligger. Husk iøvrigt at argumentet til javac er case-sensitive.
Avatar billede jacobve Nybegynder
06. juni 2001 - 17:30 #10
Hej Obele.

Det vi snakkede om i Skolen idag er ala det mpultz skriver ovenfor.

Har du prøvet at angive hele stien til den fil du vil kompilere?

fx. kan du skrive i Emacs:
D:\\jdk1.3\\bin\\javac  d:\\<stien til biblioteket>\\sum.java
Avatar billede obele Nybegynder
06. juni 2001 - 21:52 #11
Den er lige ved, at være der.
Den siger nu, at den ikke kan læse filen?

Fejlmeddelse:
cd d:/Programmer/emacs-20.7/bin/
D:\\jdk1.3\\bin\\javac  d:\\programmer\\emacs-20.7\\bin\\sum.java
error: cannot read: d:\\programmer\\emacs-20.7\\bin\\sum.java
1 error

Compilation exited abnormally with code 1 at Sat Jun 06 22:02:49
Avatar billede mpultz Nybegynder
06. juni 2001 - 21:54 #12
Hmm, sikkert fordi Emacs har \"exclusive lock\" på filen.
Avatar billede jacobve Nybegynder
07. juni 2001 - 17:18 #13
Har du husket at give din sum fil extension Java?
Avatar billede jacobve Nybegynder
07. juni 2001 - 17:19 #14
for det kunne tyde på at det var problemet... :-)
Avatar billede obele Nybegynder
09. juni 2001 - 11:48 #15
Hmmm Jacob det er lidt mærkelig:
D:\\jdk1.3\\bin\\javac  d:\\programmer\\emacs-20.7\\bin\\Produkt.java
Compileringen til javabyte kode er går fint.
Den ligger så en Produkt.class fil i Bin.


Men den vil ikke rigtigt compilere Produkt.class?
D:\\jdk1.3\\bin\\java.exe 
D:\\programmer\\emacs-20.7\\bin\\produkt.class
Det burde være rigtigt?????
hmmmmmmmmmm?????
Avatar billede jacobve Nybegynder
09. juni 2001 - 18:01 #16
Fik du sum.class til at køre efter du havde kompileret den?

Jeg ved ikke hvad du gør galt, men har du en main metode i produkt?

Det skal der til for at du køre en klassen.
Avatar billede rasmusw Nybegynder
18. juni 2001 - 08:01 #17
Det er fordi man til javac skal give extension, men ikke til java.
Så du skal skrive:
D:\\jdk1.3\\bin\\java.exe D:\\programmer\\emacs-20.7\\bin\\produkt
Så virker det.
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