Domain을 생성할 시 JDK을 선택할 수 있는데 각 WebLogic 별로 맞는 버전을
지정해줘야 잡스러운 오류가 발생하지않아요.
저의 같은 경우에는 WebLogic 10 MP1 을 설치해서 사용하려는데 JDK를 기본으로 잡힌 jre7로 잡아 주었더니 당연하게도
java.io.IOException: Compiler class: 'com.sun.tools.javac.Main', not found java.lang.ClassNotFoundException: com.sun.tools.javac.Main
라는 에러가 발생했습니다..
다시 JDK6 버전을 깔아서 설치후 도메인의 JAVAHOME을 jdk6로 잡아 해결했습니다.
반드시 JRE와 JDK를 구분해주세요.
호환성에 대해서는 아래 표를 참고해주세요.
WEBLOGIC VERSION |
JDK VERSION |
8.15 |
1.4 |
8.16 |
|
9.21 |
1.5 |
9.2MP2 |
|
9.2MP3 |
|
10 | |
10.0MP1 | |
10.0MP2 | |
10.3 | 1.6 |
10.3.1 | |
10.3.3 |
P.S 오류내용
Unable to deploy EJB: mejb.jar from mejb.jar:
There are 1 nested errors:
java.io.IOException: Compiler class: 'com.sun.tools.javac.Main', not found java.lang.ClassNotFoundException: com.sun.tools.javac.Main
at weblogic.utils.compiler.CompilerInvoker.compileMaybeExit(CompilerInvoker.java:391)
at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:295)
at weblogic.utils.compiler.CompilerInvoker.compile(CompilerInvoker.java:303)
at weblogic.ejb.container.ejbc.EJBCompiler.doCompile(EJBCompiler.java:343)
at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:533)
at weblogic.ejb.container.ejbc.EJBCompiler.compileEJB(EJBCompiler.java:500)
at weblogic.ejb.container.deployer.EJBDeployer.runEJBC(EJBDeployer.java:476)
at weblogic.ejb.container.deployer.EJBDeployer.compileJar(EJBDeployer.java:798)
at weblogic.ejb.container.deployer.EJBDeployer.compileIfNecessary(EJBDeployer.java:701)
at weblogic.ejb.container.deployer.EJBDeployer.prepare(EJBDeployer.java:1234)
at weblogic.ejb.container.deployer.EJBModule.prepare(EJBModule.java:372)
at weblogic.application.internal.flow.ModuleListenerInvoker.prepare(ModuleListenerInvoker.java:93)
at weblogic.application.internal.flow.DeploymentCallbackFlow$1.next(DeploymentCallbackFlow.java:360)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:56)
at weblogic.application.internal.flow.DeploymentCallbackFlow.prepare(DeploymentCallbackFlow.java:46)
at weblogic.application.internal.BaseDeployment$1.next(BaseDeployment.java:615)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
at weblogic.application.internal.BaseDeployment.prepare(BaseDeployment.java:191)
at weblogic.application.internal.BackgroundDeploymentService$1.next(BackgroundDeploymentService.java:164)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:26)
at weblogic.application.internal.BackgroundDeploymentService$BackgroundDeployAction.run(BackgroundDeploymentService.java:119)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:464)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)