我有一個問題,我不明白爲什麼日食使這個。我有一個叫做Cliente
的java類中的方法。一切順利,但是當我導出jar時,我看到了一個反編譯器的代碼,我不明白爲什麼這種方法不好。一些代碼從我的方法:錯誤導出java項目到jar中
public RespuestaEnvio enviar(Envio mensaje){
log.info(modulo, "Preparando el envío del mensaje: "+mensaje.getMensaje());
String mensajeError = "";
boolean descartar = false;
BeanCambioSituacion beanCambioSituacion = new BeanCambioSituacion(mensaje);
// Se validan campos obligatorios
if(isVacia(beanCambioSituacion.getCodigoPedido())){
log.error(modulo, "Código de pedido sin valor.");
descartar = true;
}
if(isVacia(beanCambioSituacion.getNumeroEnvio())){
log.error(modulo, "Número de envío sin valor.");
descartar = true;
}
This method with a decompiler seeing the code:
/* Error */
public gestionEventos.RespuestaEnvio enviar(gestionEventos.Envio mensaje)
{
// Byte code:
// 0: aload_0
// 1: getfield 49 es/chx/ws/eci/cambiaEstado/Cliente:log Les/chx/ws/eci/domain/LogUtil;
// 4: aload_0
// 5: getfield 41 es/chx/ws/eci/cambiaEstado/Cliente:modulo Ljava/lang/String;
// 8: new 116 java/lang/StringBuilder
// 11: dup
// 12: ldc -15
// 14: invokespecial 120 java/lang/StringBuilder:<init> (Ljava/lang/String;)V
// 17: aload_1
// 18: invokevirtual 243 gestionEventos/Envio:getMensaje()Ljava/lang/String;
// 21: invokevirtual 121 java/lang/StringBuilder:append (Ljava/lang/String;)Ljava/lang/StringBuilder;
// 24: invokevirtual 131 java/lang/StringBuilder:toString ()Ljava/lang/String;
// 27: invokevirtual 134 es/chx/ws/eci/domain/LogUtil:info (Ljava/lang/String;Ljava/lang/String;)V
// 30: ldc -114
// 32: astore_2
// 33: iconst_0
// 34: istore_3
// 35: new 248 es/chx/ws/eci/bean/BeanCambioSituacion
// 38: dup
// 39: aload_1
// 40: invokespecial 250 es/chx/ws/eci/bean/BeanCambioSituacion:<init> (LgestionEventos/Envio;)V
// 43: astore 4
// 45: aload_0
// 46: aload 4
// 48: invokevirtual 253 es/chx/ws/eci/bean/BeanCambioSituacion:getCodigoPedido ()Ljava/lang/String;
// 51: invokevirtual 256 es/chx/ws/eci/cambiaEstado/Cliente:isVacia (Ljava/lang/String;)Z
// 54: ifeq +19 -> 73
// 57: aload_0.
任何人都可以給一些信息,我不明白爲什麼會發生這種情況。代碼完全不同。這是我的問題。爲什麼當我導出java項目時,代碼在方法內部是不同的?
歡迎來到Stack Overflow!我編輯了你的問題,正確地縮進你的輸出4個空格,以便正確呈現 - 請參閱編輯幫助以獲取更多格式化信息。我還修復了一些小的語法錯誤。祝你好運! – Wtower