개발서적/토비 스프링 3.1-Vol.1

[토비의 스프링 - Vol.1]7.2.1 xml 파일 매핑 - JAXB 관련 실습 중 나온 현상

JAXB를 사용하여 매핑하는 실습을 진행중 나온 헤맨 상황

1. 아래의 코드를 입력

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
	targetNamespace="http://www.epril.com/sqlmap"
	xmlns:tns="http://www.epril.com/sqlmap" elementFormDefault="qualified">

  	<element name="sqlmap">
      	<complexType>
          	<sequence>
              	<element name="sql" maxOccurs="unbounded" type="tns:sqlType" />
          	</sequence>
     	</complexType>
  	</element>
  	<complexType name="sqlType">
      	<simpleContent>
      		<extension base="string">
      			<attribute name="key" use="required" type="string" />
      		</extension>
      	</simpleContent>
	</complexType>
</schema>

2. 셀이나 도스창에서 프로젝트 루트 폴더로 이동 후 아래의 명령어를 입력

xjc -springbook.user.sqlservice.jaxb sqlmap.xsd -d src

 

2번 작업을 하는중 xjc를 찾지 못하면서 진행이 되지 않았음

이유를 찾아보니

1. java -version 으로 치면 jdk 1.8을 보여주고 javac -version 으로 치면 jdk 12를 보여주고 있었음

 -> 환경변수를 가보니 JAVA_HOME이 jdk 12로 되어 있어서 jdk1.8로 변경했음 

 -> xjc는 jdk 12에서는 지원이 되지 않는걸로 보였음

2. 설정 후 다시 명령어를 쳤으나 src파일을 찾을 수 없다는 내용을 보여주며 안됌

 -> 도스창으로 springbook.user.sqlservice.jaxb 경로로 이동 (cd명령어 이용)

 -> 해당 경로(springbook.user.sqlservice.jaxb)에 src폴더를 만듬 (임시)

 -> 다시 명령어 실행하니 실행 됌

 

 

첫번째 문제는 환경이 안맞아서 그런것 같은데.. 두번째는 내가 이해를 못해서 인 것 같은데... 실습은 진행이 되서 패스..