Estou tentando gerar um relatório mas está dando isso java.lang.reflect.InaccessibleObjectException

public void gerarRelatoriosInfoPedidos(VendaVO vendaVO) {
		try {
			String currentPath = "";
			try {
				currentPath = new java.io.File(".").getCanonicalPath();
			} catch (IOException ex) {
				System.out.println(ex.toString());
			}
			System.out.println(currentPath);
			HashMap<String, Object> parameters = new HashMap<String, Object>();
			parameters.put("IDVENDA", vendaVO.getIdVenda());
			JasperRunManager.runReportToPdfFile(currentPath + "/REL02.jasper", currentPath + "/REL02.pdf", null,
					Banco.getConnection());
			System.out.println("Relatorio gerado em " + currentPath + "/REL02.pdf");
		} catch (JRException ex) {
			System.out.println("Não foi possivel imprimir, por favor verifique o modelo de impressão");
		}
	}

java.lang.reflect.InaccessibleObjectException: Unable to make protected void java.lang.Object.finalize() throws java.lang.Throwable accessible: module java.base does not “opens java.lang” to unnamed module @4b4523f8

Posta o StackTrace completo.

java.lang.reflect.InaccessibleObjectException: Unable to make protected void java.lang.Object.finalize() throws java.lang.Throwable accessible: module java.base does not “opens java.lang” to unnamed module @4b4523f8

Executa sua máquina virtual com esse parâmetro:

--add-opens java.base/java.lang=ALL-UNNAMED

Estou com o mesmo problema, mas só acontece quando adiciono uma imagem ao relatório.

No meu caso, na opção preview o relatório aparece OK, mas quando executo a aplicação, só gera o relatório se não tiver nenhuma imagem, se eu adicionar qualquer imagem jpg,gif ou png ele apresenta esse erro.

java.lang.reflect.InaccessibleObjectException: Unable to make protected void java.lang.Object.finalize() throws java.lang.Throwable accessible: module java.base does not “opens java.lang” to unnamed module @f3165fc
at java.base/java.lang.reflect.AccessibleObject.throwInaccessibleObjectException(AccessibleObject.java:387)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:363)
at java.base/java.lang.reflect.AccessibleObject.checkCanSetAccessible(AccessibleObject.java:311)

Já adicionou o seguinte parâmetro à execução de sua VM?

--add-opens java.base/java.lang=ALL-UNNAMED

Ja adicionei, continua dando o mesmo erro

só acontece quando eu uso image no relatorio

Na opção preview funciona perfeitamente, mas quando tento executar o JAR, tanto faz fora da ou dentro do NetBeans , da esse erro.

Você colocou no lugar errado, esses parâmetros são para a máquina virtual, então tem que pôr no VM Options.

Você também vai ter que passar esses parâmetros ao executar seu jar externamente.

Fiz o teste, e realmente deu certo
para executar via lia de comando :
java --add-opens java.base/java.lang=ALL-UNNAMED JavaApplication7_1_1.jar


no net beans ficou assim … obrigado … valeu pela força

1 curtida