PC SOFT

FORUMS PROFESSIONNELS
WINDEVWEBDEV et WINDEV Mobile

Accueil → WINDEV 23 → Problemas ao executar a função JavaLoad no Linux
Problemas ao executar a função JavaLoad no Linux
Débuté par Fabricio Peruzzolo, 18 juil. 2018 22:58 - 1 réponse
Membre enregistré
2 messages
Posté le 18 juillet 2018 - 22:58
Estou com um problema ao executar a função JavaLoad no Linux.
Minha configuração:
- WebDev 22 63m
- Servidor Linux Debian 9 amd_64
- Apache 2.2.34
- Java 1.8.151 64 bits

sJar is string = fWebDir()+"\pacote\subpacote\Classe.jar"
IF fFileExist(sJar) = False THEN
RESULT bufRetorno
END
IF JavaLoad(sJar) THEN
Trace("Usando Biblioteca " + sJar)
ELSE


Mensagem de erro:

WL call:
Process of 'Global Procedure calcularHoras (server)' (Cliente.calcularHoras),
 line 9, thread 0
'JavaLoad' function, syntax 0

What happened?
The jvm.dll DLL is not found.
The Java version installed must be in 64 bits.

Error code: 110009
Level: fatal error

Dump of the error of 'wd220jav64.so' module (22.0.49.0).
Identifier of detailed information (.err): 110009


No help do JavaLoad [ https://help.windev.com/en-US/… ], diz o seguinte:

" the search for JVM.DLL file in Windows and for "libjvm.soc" file in Linux".
Pois bem o help menciona o arquivo libjvm.soc para linux, o que faria o mesmo trabalho do JVM.DLL quando essa função é usada no windows.

Fiz uma busca e achei o arqui "libjvm.so" e não o "libjvm.soc".

PS.: No windows o webservice funciona perfeitamente
Membre enregistré
2 messages
Posté le 20 juillet 2018 - 00:29
Problema resolvido. Faltou configurar corretamente o PATH

Criei a variável de ambiente LIB_JVM e a coloquei no PATH do linux.

export JAVA_HOME="/usr/local/java/jdk1.8.0_181"
export JRE_HOME="/usr/local/java/jdk1.8.0_181/jre/bin"
export CLASSPATH="/usr/local/java/jdk1.8.0_181/lib"
export LIB_JVM="/usr/local/java/jdk1.8.0_181/jre/lib/amd64/server/"

vim ~/.bashrc
export PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:$JAVA_HOME:$JRE_HOME:$CLASSPATH:$LIB_JVM"

source ~/.bashrc


:obrigado: