Java 패키지를 생성하고 Java 애플리케이션 빌드하기
지원되는 플랫폼: Windows®, Linux®, Mac
이 예제에서는 MATLAB® 함수에서 Java® 패키지를 생성하고 이 패키지를 MATLAB Compiler SDK™로 생성된 Java 애플리케이션에 통합하는 방법을 보여줍니다.
선행 조건
MATLAB Compiler SDK와 호환되는 Java 버전이 설치되어 있는지 확인합니다. 지원되는 Java 버전에 대한 자세한 내용은 다른 언어에 대한 MATLAB 인터페이스 항목을 참조하십시오.
설치 후 개발 환경을 구성하는 방법에 대한 자세한 내용은 Configure Your Environment for Generating Java Packages 항목을 참조하십시오.
최종 사용자는 애플리케이션을 실행하려면 MATLAB Runtime을 설치해야 합니다. 자세한 내용은 MATLAB Runtime 다운로드 및 설치하기 항목을 참조하십시오.
테스트 목적으로 MATLAB Runtime 대신 MATLAB를 설치하여 사용할 수 있습니다.
MATLAB에서 함수 만들기
MATLAB에서, 패키징하려는 MATLAB 코드를 검사합니다. 이 예제에서는 다음 코드를 포함하는 makesqr.m이라는 이름의 함수를 만듭니다.
function y = makesqr(x)
y = magic(x);MATLAB 명령 프롬프트에서 makesqr(5)를 입력합니다.
출력값은 5×5 행렬입니다.
17 24 1 8 15
23 5 7 14 16
4 6 13 20 22
10 12 19 21 3
11 18 25 2 9compiler.build.javaPackage를 사용하여 Java 패키지 생성하기
프로그래밍 방식을 사용하여 Java 패키지를 빌드합니다. 또는 그래픽 인터페이스를 사용하여 Java 패키지를 생성하려면 Create Java Package Using Java Package Compiler App 항목을 참조하십시오.
함수를 호출하는 MATLAB 샘플 스크립트를 만듭니다. 다음 코드를
makesqrSample1.m이라는 이름의 샘플 파일에 저장합니다.% Sample script to demonstrate execution of function y = makesqr(x) x = 5; y = makesqr(x);패키징하는 중에 MATLAB Compiler SDK는 샘플 MATLAB 스크립트를 사용하여 타깃 언어에서 샘플 애플리케이션을 생성합니다. 자세한 내용은 Create Sample Code to Call Exported Function 항목을 참조하십시오.
compiler.build.javaPackage함수와 앞서 생성한makesqr.m파일을 사용하여 Java 패키지를 빌드합니다. 이름-값 인수를 사용하여 샘플 파일을 추가하고 세부 정보 출력을 활성화합니다.buildResults = compiler.build.javaPackage('makesqr.m', ... 'SampleGenerationFiles','makesqrSample1.m', ... 'Verbose','on');
compiler.build명령에서 이름-값 인수를 사용하여 추가 옵션을 지정할 수 있습니다. 자세한 내용은compiler.build.javaPackage항목을 참조하십시오.compiler.build.Results객체buildResults에는 빌드 유형, 생성된 파일, 포함된 지원 패키지, 빌드 옵션에 대한 정보가 포함됩니다.이 함수는 작업 폴더에 있는
makesqrjavaPackage라는 이름의 폴더 내에 다음 파일과 폴더를 생성합니다.classes— Java 클래스 파일과 배포 가능한 아카이브 CTF 파일이 포함되어 있는 폴더.doc— 패키지의 모든 클래스에 대한 HTML 문서가 포함되어 있는 폴더.example— Java 소스 코드 파일이 포함되어 있는 폴더.samples— Java 샘플 드라이버 파일makesqrSample1.java가 포함되어 있는 폴더.GettingStarted.html— 패키지 통합에 대한 정보가 포함되어 있는 파일.includedSupportPackages.txt— 패키지에 포함된 모든 지원 파일을 나열하는 텍스트 파일.makesqr.jar— Java 아카이브 파일.mccExcludedFiles.log— 애플리케이션에 포함되지 않은 툴박스 함수 목록이 포함되어 있는 로그 파일. 지원되지 않는 함수에 대한 자세한 내용은 컴파일이 지원되지 않는 함수 항목을 참조하십시오.readme.txt— 배포 선행 조건 관련 정보와 배포를 위해 패키징할 파일 목록이 포함되어 있는 텍스트 파일.requiredMCRProducts.txt— MATLAB Runtime에서 애플리케이션을 실행하는 데 필요한 제품의 제품 ID가 포함되어 있는 텍스트 파일.unresolvedSymbols.txt— 연결이 맺어지지 않은 기호에 대한 정보가 포함되어 있는 텍스트 파일.
참고
생성된 패키지는 MATLAB Runtime 또는 인스톨러를 포함하지 않습니다.
buildResults객체를 사용하여 인스톨러를 만들려면compiler.package.installer항목을 참조하십시오.
MATLAB에서 생성된 Java 애플리케이션 컴파일 및 실행하기
Java 패키지를 만든 후에는 Java 애플리케이션에서 패키지를 호출할 수 있습니다. 이 예제에서는 패키징 중에 생성된 샘플 Java 코드를 사용합니다. 이 샘플 Java 애플리케이션 코드를 가이드로 참고하여 애플리케이션을 직접 작성할 수 있습니다.
samples폴더에서 생성된 Java 파일makesqrSample1.java를 복사하여makesqr.jar패키지가 포함된 폴더에 붙여 넣습니다.시스템 명령 프롬프트에서
makesqrSample1.java및makesqr.jar이 포함되어 있는 폴더로 이동합니다.javac를 사용하여 애플리케이션을 컴파일합니다. classpath 인수에,com.mathworks.toolbox.javabuilder패키지가 포함되어 있는javabuilder.jar의 경로와 생성된 Java 패키지makesqr.jar의 경로를 지정합니다.Windows에서는 다음을 입력합니다.
javac -classpath "matlabroot\toolbox\javabuilder\jar\javabuilder.jar";.\makesqr.jar makesqrSample1.javaUNIX®에서는 다음을 입력합니다.
javac -classpath "matlabroot/toolbox/javabuilder/jar/javabuilder.jar":./makesqr.jar makesqrSample1.java를 MATLAB 또는 MATLAB Runtime 설치 폴더의 경로로 바꿉니다. 예를 들어 Windows에서는 경로가matlabrootC:\Program Files\MATLAB\R2025b일 수 있습니다.참고
makesqr.jar또는makesqrSample1.java가 현재 디렉터리에 없는 경우, 명령에서 전체 경로 또는 상대 경로를 지정하십시오. 경로에 공백이 포함되는 경우 큰따옴표로 묶으십시오.
java를 사용하여 애플리케이션을 실행합니다.Windows에서는 다음을 입력합니다.
java -classpath .;"matlabroot\toolbox\javabuilder\jar\javabuilder.jar";.\makesqr.jar makesqrSample1UNIX에서는 다음을 입력합니다.
java -classpath .:"matlabroot/toolbox/javabuilder/jar/javabuilder.jar":./makesqr.jar makesqrSample1참고
클래스 경로의 첫 번째 위치에 있는 점(
.)은 현재 작업 디렉터리를 나타냅니다. 이 위치에 점이 없으면 Java가 클래스를 불러올 수 없다는 메시지가 표시됩니다.
애플리케이션은 샘플 MATLAB 스크립트와 동일한 출력값을 반환합니다.
17 24 1 8 15 23 5 7 14 16 4 6 13 20 22 10 12 19 21 3 11 18 25 2 9
참고 항목
compiler.build.javaPackage | mcc