경고 : Java 나 Eclipse 전문가가 아닙니다!빌드 된 Java 클래스가 변경 사항을 나타내지 않음
Eclipse에서 Java 프로젝트를 상속 받았습니다. 여러 Java 파일을 변경했습니다. 이렇게하고 파일을 저장 한 후에 set_javac.bat라는 파일을 실행했습니다 (상 속됨).
set JAVA_HOME=C:\Program Files\Java\jdk1.7.0_85
rem set JAR_HOME="D:\Cognos\cognos_version\sdk\java\lib"
set JAR_HOME="D:\code\lib"
set JAVAC=%JAVA_HOME%/bin/javac
set PATH=%JAVA_HOME%/bin
rem Create the Classpath
set CLASSPATH=
set CLASSPATH=%CLASSPATH%;%JAVA_HOME%/lib/tools.jar
rem Compile Java files
이 파일을 실행 한 후, 나는 경우 build.bat를 실행 한 후 오전 (또한 상속 - 편집 됨) : 여기에 해당 파일의 편집 됨 버전입니다
@echo off
rem Licensed Materials - Property of IBM
rem
rem IBM Cognos Products: CAMAAA
rem
rem (C) Copyright IBM Corp. 2005, 2012
rem
rem Copyright © 2008 Cognos ULC, an IBM Company. All Rights Reserved.
rem Cognos and the Cognos logo are trademarks of Cognos ULC (formerly Cognos Incorporated).
rem Build Java files in directory TestSample
echo Building TestSample
rem Build the CLASSPATH required to build Java files in the directory TestSample
set _CLASSPATH=D:\code\lib\CAM_AAA_CustomIF.jar;D:\code\adapters;D:\Cognos\cognos_version\webapps\p2pd\WEB-INF\lib\ojdbc6.jar;D:\code\lib\axis.jar;D:\code\lib\jaxrpc.jar
rem Compile Java files
javac -Xlint:unchecked -classpath %_CLASSPATH% -d . *.java
rem Create jar file
jar cfm0 CAM_AAA_TestSample.jar MANIFEST *.class
echo done
파일이없이 실행 .BAT이 두 가지 모두를 오류. 새 .class 파일은 .java 파일과 동일한 디렉토리에 작성됩니다. 새 CAM_AAA_TestSample.jar 파일도 작성됩니다. 그러나 .jar 파일을 올바른 위치에두고 Cognos 서비스를 다시 시작하고 로그 파일을 확인하면 변경 한 내용이 표시되지 않습니다. 특히, 내가 (예를 들어)에서 로그 메시지를 변경 :
thisfile: init
에 ...
thisfile.java -> init: Entered function
을하지만 로그 파일을 열 때, 나는 새로운 메시지를 참조 (날짜/시간 스탬프) 여전히 이전 형식으로. 내가 도대체 뭘 잘못하고있는 겁니까?
설정에 대한 자세한 내용이 필요하면 알려 주시면 최대한 도와 드리겠습니다. 우리는 이클립스를 사용하여 작업 공간을 관리하고 "인텔리전스"를 사용하지만, 우리는 그것을 사용하지 않습니다. 제공 할 수있는 모든 정보는 진심으로 감사드립니다.
이 jar 파일은 클래스 경로의 여러 위치에 있습니까? 아마 실제로 사용되는 것을 교체하지 않을 것입니까? – Brick
현재로서는 솔직히 모르겠지만 그렇게 믿지는 않습니다. Sys Admins가 "작업중인"파일을 내가 작성한 새 파일로 바꿀 때 내장 된 디렉토리의 타임 스탬프와 동일한 타임 스탬프를 가지고 있는지 확인합니다.하지만 둘러 보겠습니다. – XstreamINsanity
나는 어떤 클래스 정의가 두 곳에서 나타나는 것을 보았다. 그런 다음 JVM이 처음 발견합니다. "근무중인"파일이 당신이 생각하는 파일이 아닐 수도 있습니다. 여기에서 말하는 것이 어렵다. 그냥 생각. – Brick