진행 과정
[ 32비트 버전의 Java를 사용하도록 ADT 명령을 구성하는 방법 ]
•
Adobe Air SDK 다운로드 : https://www.adobe.com/devnet/air/air-sdk-download.html
1. JDKS version 7 이하의 경우 : ADT 명령을 실행하기 전에 64 비트 대신 32 비트 버전의 Java를 사용하고 있는지 확인하십시오.
2. Adobe Air SDK를 다운로드 한 폴더로 이동하고 AIRSDK_Compiler/bin 하위 폴더로 이동합니다.
3. adt.bat의 백업파일을 만듭니다 (예 : adt-copy.bat 라고 표시되도록 복사본 만들기)
4. 32 비트 JDK 설치를 가리 키도록 adt.bat를 편집합니다.
"C:\Program Files (x86)\Java\jdk1.7.0_05\bin\java.exe" -jar "%~dp0\..\lib\adt.jar" %*
5. Air Development Tool을 사용하여 Adobe AIR 어플리케이션에 서명합니다.
adt -sign -tsa http://rfc3161timestamp.globalsign.com/advanced -storetype PKCS11 -providerName SunPKCS11-eToken "path\to\YourApp.air"
6. 인증서 암호를 묻는 팝업창에 패스워드를 입력하면 서명이 완료 됩니다.
Keytool 및 ADT 명령 옵션
•
현재 사용자 계정의 인증서 리스트
keytool -list -storetype Windows-MY
•
별칭별 인증서 리스트
keytool -list -keystore NONE -storetype PKCS11 -providerClass sun.security.pkcs11.SunPKCS11 -providerArg "c:\eToken.cfg"
•
사용할 인증서 지정
adt -alias "CN=YourCompany, Inc." -storetype PKCS11 -providerName sun.security.pkcs11.SunPKCS11 -tsa http://timestamp.digicert.com "path\to\AIRappToSign"
> 오류 메시지
- "요청한 공급자를 사용할 수 없습니다" 이 오류 메시지는 다음 상황에서 발생할 수 있습니다.
(1) 64 비트 Java 설치를 사용하여 ADT 명령을 사용하려고 하거나
(2) etoken.cfg 파일을 가리키는 security.lib 파일이 올바르게 구성되어 있지 않을 수 있습니다.
- "타임 스탬프를 생성할 수 없습니다. handshake경고 : unrecognized_name"
이것은 일반적으로 "-tsa"지시문이 서명 명령에 포함되지 않아 발생합니다.
- "서명자에 대한 유효한 인증서 체인을 빌드 할 수 없습니다."
이 오류는 장치에 체인 인증서 (예 : 중간 및 루트 인증서)가 설치되어 있지 않음을 의미합니다. 장치를 다시 초기화하고 인증서를 다시 입력해야 합니다. 이 오류가 발생했을 경우, 인증서 재발급을 진행해야 합니다.
- "keytool 오류 : java.security.KeyStoreException : PKCS11을 찾을 수 없음"
이 오류는 일반적으로 32 비트 (C : \ Program Files (x86) \) 대신 64 비트 Java 설치 (C : \ Program Files \ Java \ jdk ** \ bin \) 에서 keytool 명령을 실행하려고 할 때 발생합니다 . Java \ jdk ** \ bin \ ).
- ADT 명령 실행시 64 비트 버전의 Windows 문제
64 비트 버전의 Windows를 사용하는 경우 ADT 명령을 실행할 때 문제가 발생할 수 있습니다. PKCS11 액세스는 32 비트 버전의 JRE에서만 지원되므로 JRE에 대해 나열된 경로가 64 비트 버전이 아닌 32 비트 버전의 Java를 가리키는 지 확인해야 할 수 있습니다.
[ JRE를 32 비트 버전의 Java로 지정하는 방법 ]
1. 고급 시스템 설정 열기 시작> 제어판> 시스템> 고급 시스템 설정 > 고급 탭 클릭
2. 환경 변수 수정 합니다. JDK 에 대한 경로를 아래 표시된 대로 경로 변수 값 끝에 추가 합니다.
{existing path variables};C:\Program Files\Java\jdk1.6.0_**\bin