Cargando recursos desde un JAR
Al acceder a recursos integrados en un archivo JAR, los desarrolladores suelen encontrar una discrepancia entre la ruta de recursos obtenida durante el IDE ejecución y al ejecutar la aplicación a través de JAR. En el contexto del IDE, se accede a los recursos directamente desde el sistema de archivos, mientras que en el entorno JAR, la ruta se adorna de manera discordante con el prefijo del archivo (por ejemplo, "jar:/root/app.jar!/").
Para resolver este problema y mantener un mecanismo de acceso a recursos coherente, preste atención a los siguientes consejos:
Utilizar getResourceAsStream
Evite la tentación de cargar recursos utilizando FileInputStream o enfoques similares. En su lugar, aproveche el método getResourceAsStream() para recuperar un recurso como un flujo de entrada, desde el cual los datos se pueden leer cómodamente.
Evite el acceso directo al sistema de archivos
Si El código depende del acceso a recursos como archivos individuales almacenados en el sistema de archivos, absténgase de empaquetar esos recursos dentro de un archivo JAR. Considere una solución alternativa, como mantenerlos como archivos separados.
Considere la extracción de archivos temporales
Como último recurso, puede explorar una solución ingeniosa que implique los siguientes pasos :
Si bien este enfoque puede ser funcional, su naturaleza desordenada sugiere que debe emplearse con cautela.
Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.
Copyright© 2022 湘ICP备2022001581号-3