반응형

메이븐 프로젝트가 아닌 일반 자바 프로젝트에서 이클립스로 외부 라이브러리를 추가하려면 다음과 같이 하면 된다.
먼저 해당 프로젝트에서 마우스 우측을 눌러 Build Path를 선택하면 우측에 서브 메뉴로 Configure Build Path가 뜬다.

여기서 우측의 Add External JARs... 버튼을 누르고

JAR Selection 창이 뜨면 다운받아 놓은 lib를 선택하면 된다.

 

------------------------------------------------------------------------ 추가 ------------------------------------------------------------------------

추가로 외부라이브러리가 없을 때 문제 해결 방법은 다음과 같다.

내 경우 메이븐 프로젝트가 아닌 상태에서 SVN에서 프로젝트를 불러왔기에 외부 라이브러리들이 없는 경우가 발생하였다.
"Provider com.sun.xml.internal.ws.spi.ProviderImpl not found"
검색해보니 stackoverflow.com 페이지가 검색되었다.
jaxws-api-2.3.1.jar 파일이 없어서 발생하는 문제란다.
https://stackoverflow.com/questions/54032558/jdk-11-jax-ws-provider-com-sun-xml-internal-ws-spi-providerimpl-not-found

 

JDK 11; JAX-WS; Provider com.sun.xml.internal.ws.spi.ProviderImpl not found

I Need to access legacy SOAP webservices in JDK 11. But I am suffering "ProviderImpl not found." The JDK 11 implementation is: zulu11.2.3-jdk11.0.1-win_x64. In my build.gradle, I have the following

stackoverflow.com

외부 library 다운로드는 구글에 검색하면 되는데 대부분 https://mvnrepository.com/ 에서 검색 후 다운받을 수 있다.
(만약 없다면 당연하지만 구글 검색해서 다운 받아야 한다.)

jaxws-api-2.3.1.jar 파일을 https://mvnrepository.com/  에서 먼저 버전을 제외하고 검색하여 아래 결과를 얻었고

2.3.1이 최신이라 2.3.1버튼을 눌러

최종 다운로드 받는 곳으로 이동하여 Files옆에 있는 jar 버튼을 눌러 jar파일을 다운받았다.

jar파일을 프로젝트의 lib폴더든 아무폴더든(비추) 위치해 놓고 위 과정을 거쳐 외부 라이브러리를 프로젝트에 포함시키면 된다.

반응형
Posted by Hippalus
,

반응형

프로젝트를 SVN으로 다운받아 보니 저렇게 뻘건 네모가 뜬다.
라이브러리가 없는 상태인지라 일일이 로컬로 다운받아줘야 한다.

외부 라이브러리 다운로드는 이 사이트를 이용하면 되겠다.

https://mvnrepository.com/

메이븐 프로젝트로 만들었으면 될 일을 -_-

다운로드가 다 되었으면
프로젝트에서 마우스 우측 버튼을 눌러 Build Path를 선택하면 Configure Build Path가 보일것이다.
이걸 클릭해주자.

그럼 창이 새로 뜨는데 기본적으로 Libraries탭이 선택되어 있을것이고

우측에 보면 Add External JARs 버튼을 눌러준다.

그리곤 아까 다운받았던 외부 라이브러리를 선택해서 apply시켜주면 eclipse에서 설정이 완료되고 빨강 네모가 사라진다.

 

반응형
Posted by Hippalus
,

반응형

MS툴들에 비해 이클립스는 너무나 불편하기 이루 말할 수 없다.
특히 단축키는 학을 뗀다.
그나마 단축키 변경을 통해 MS스럽게 만들어 볼 수 있다.

단축키를 변경하기 위해 GNB의 Window > Preferences로 가서 Keys라고 검색을 하자

먼저 브레이크 포인트 추가 / 제거
Scheme아래 type filter text 입력란에서 Toggle Breakpoint라고 입력하자 그리곤 Binding부분에 F9을 입력하자.
앞으론 F9를 누를 때 마다 브레이크 포인트가 생겼다 사라졌다 할 것이다.

다음 브레이크 포인트까지 쭉 실행하는 키는 F5로 바꿔주자
검색어는 run to line이다.

다음은 브레이크 포인트로 멈춘 상태에서 한줄씩 코드를 실행하는 기능이다.
Step Over이다. F10을 입력하자.

이제 마지막 함수에 위치해 있을 때 해당 함수 속으로 파고 들어가는 기능은 Step Into 이다.
단축키는 F11을 입력하자.

Visual Studio 6.0부터 닷넷, VSCode, Xcode 등을 두루 사용해 봤지만 정말 이클립스 같은 개똥 컴파일러는 처음 본다.
자바 개발자님들 존경합니데이~

반응형
Posted by Hippalus
,

반응형

윈도우 키를 눌러 설정이라고 입력하여 설정앱을 실행하자.

설정의 좌측 시간 및 언어를 눌러준다.

언어 및 지역을 선택한다.

한국어
언어 팩, 텍스트 음성 변환, 필기, 기본 입력 의 ... 메뉴를 선택하면

언어 옵션이 나온다.

언어 옵션을 누르면 이제 옵션으로 진입하게 된다. 
참 복잡하다. -_-

Microsoft 입력기의 ... 메뉴를 눌러 키보드 옵션을 선택한다.

IME 버전이 unselected 상태로 되어 있는데 이를 파랑으로 바꿔준다.
그럼 Microsoft IME를 사용하겠냐고 물어온다.

확인을 누르고 피그마에 가보면 한글이 중복으로 입력되는 증상이 해결된다.

이상 figma 한글 두 번 입력 증상 해결하기 끝

반응형
Posted by Hippalus
,

반응형

정치 문제로 네이버 실검이 사라진지 오래지만 사람이란게 같은 시공간에 살고 있을 때 다른 사람들의 생각이
궁금하고 사회적 문제 상황이 발생하면 뉴스보다 더 찾는게 검색창이기에
네이버 실검은 매우 유용한 도구라 생각함

약간의 노력을 더하면 네이버실검을 다시 볼 수 있어 그 방법을 설명하고자 한다.

네이버앱을 켜고 검색창에 아래와 같이 입력한다.
https://는 없어도 가능하다.
https://signal.bz/news

시그널 실시간검색어

네이버앱을 통해 확인 가능한 실시간 검색어 및 실시간 급상승 검색어, 검색어 순위, 인기뉴스 등 놓칠 수 없는 실시간 트렌드. 지금 무료로 실시간 검색어와 인기뉴스를 확인해보세요.

signal.bz

그럼 그리운 네이버 실검 현황이 나타난다.
매번 이렇게 보거나 이 URL을 바탕화면에 갖다 놔도 되지만 난 네이버에서 보려한다.

네이버 앱 우측 하단을 보면 햄버거 메뉴처럼 생긴 두줄 가로선을 누르면 위 화면이 나온다.
여기서 현재 페이지 저장을 누른다.


적당한 이름으로 네이버메인으로 저장한다.


네이버 콘텐츠 탭에 좀전에 추가한 네이버 실검이 보일것이다.
그런데 순서가 마음에 들지 않는다.


우측 상단에 좌우화살표를 눌러 불필요한것들은 제거하고 실검을 제일 앞에 나오게 하자
그럼 끝

네이버실검 개같이 부활

반응형
Posted by Hippalus
,

반응형

아마 오늘 이런 메일들을 구글로 부터 받은 개발자들이 꽤 될 것이다.
"Google Play 계정 확인 기한을 지금 선택하여 원하는 시간대를 예약하세요"
이게 뭔 개풀 뜯어 삶아 먹는 소린가 싶어 PLAYSTORE CONSOLE에 로그인해 보니 이따위 안내가 떡하니 보인다.

문구만 보면 마치 자애롭게도 구글님께서 개발자들에게 친히 DUNS번호를 입력기간 선택권을 주신다란 말씀으로 사료된다.
시작하기 버튼을 누르면 기한을 선택하라고 나온다.

대충 해석을 해보면 이 선택한 날짜까지 DUNS 번호를 입력하지 않을 경우 계정이 삭제 되고 앱도 삭제 된다란 협박인데
바보가 아니고서야 당연히 가장 늦은 날짜를 선택해야 하는거 아닌가?
이해할 수 없는건 2024년 6월 24일이 예약할 수 없는 시간대로 비활성화 되어 있단 점이다.
다들 변태인가? -_-

날짜를 선택하면 개인인지 조직인지 선택해야 하는데 여기서 회사면 조직을 선택하면 되고 D-U-N-S 번호 보유 여부에 따라 선택하고 국가는 대한민국으로 선택하면 된다.
제발 좀 부탁인데 한국이면 한국, SOUTH KOREA면  SOUTH KOREA, 대한민국이면 대한민국
쫌 하나로 통일해라. 쫌

선택하고 나면 마지막 예약 버튼이 뜬다.

신청이 끝나면 이렇게 메일로 안내 메일이 날라온다.
그.런.데 얘네들 말로는 무료라고 하는데 DUNS 발급해주는 서비스 가보면 지역을 대한민국으로 하면 수십만원을 요구하더라 ㅡㅡ
보통 안드로이드와 애플 모두 서비스하고 있을테니 이럴 땐 애플을 애용해주자.
https://gigas-blog.tistory.com/221


계정 확인 완료 기한이 확인되었습니다
계정 관리자가 ㅇㅇ개발자 계정의 계정 확인 기한을 선택했습니다.

확인된 기한: 2024. 7. 26.
기한 60일 전인 2024. 5. 27.에 Play Console에서 계정 확인을 시작할 수 있습니다.

확인할 때 제출할 항목은 다음과 같습니다.

조직의 D-U-N-S 번호
D-U-N-S 번호가 없는 경우 Dun & Bradstreet에 무료로 요청할 수 있습니다. 이 절차에 최대 30일이 걸릴 수 있으므로 Play Console에서 계정 확인을 할 수 있으려면 충분한 시일을 두고 미리 D-U-N-S 번호를 요청하는 것이 좋습니다.D-U-N-S 번호 요청 자세히 알아보기
Google Play 사용자가 문의할 수 있는 연락처 전화번호 및 이메일 주소
Google에서 연락할 수 있는 연락처 전화번호 및 이메일 주소
신원 확인을 위한 공문서
조직 인증을 위한 공문서
Google Play 결제를 사용하여 Google Play에서 수익을 창출하는 경우 판매자 결제 세부정보도 인증해야 합니다.

업데이트된 Play Console 요구사항 정책을 준수하기 위해 2024. 7. 26.까지 계정 확인을 완료해야 합니다. 이 날짜까지 확인을 완료하지 않으면 개발자 프로필과 앱이 Google Play에서 삭제됩니다.

계정 확인에 관해 자세히 알아보려면 고객센터를 방문하세요.

자세히 알아보기
감사합니다.
Google Play Console팀

반응형
Posted by Hippalus
,

반응형

MS사의 Azure 클라우드 서비스는 무료로 사용해볼 수 있도록 쿠폰을 지급해준다.
처음이야 이것저것 해보며 신기해 할 수 있지만 어쩐지 뒤가 캥긴다.
나중에 해킹이라도 당해서 수백만원에 달하는 억울한 비용 부담이 발생한다면 과연 누가 책임져 줄 것인가?
하여 잘 가지고 놀았다면 사전에 구독 취소를 함이 맞겠다.

https://portal.azure.com   접속 후 좌측 햄버거 메뉴 (三)를 눌러보면 모든 서비스라는 메뉴가 보일것이다.

메뉴가 너무 많으니 Ctrl + F로 구독이라고 검색해보면 구독 이라고 일반 그룹에 보일것이다.
눌러주자


또는 메인에 버젓이 구독이란 메뉴가 보이는데 이걸 눌러도 된다.


그럼 내가 구독중인(물론 무료겠지) Azure 구독상품이 뜰텐데 구독 이름을 눌러준다.

상단에 보면 쓰레기통 구독 취소가 보인다.

이걸 누른다.

그럼 대충 왜 Azure 서비스를 구독 취소 하는지 물어보는데 뭐 뻔하지 않는가?
엉뚱한 과금 폭탄이 무서우니 취소하는거지.

대충 선택해주고 하단에 버튼 완료였나를 눌러주면 끝난다.

 

 

반응형
Posted by Hippalus
,

반응형

linux cent os에 node.js를 설치하기 위해선 yum을 이용하여야 한다.
root권한이 있는 계정으로 접속한 후 yum repolist를 실행해보면 아래 스샷처럼 보통 초기엔 epel이란게 없기 마련이다.

EPEL 저장소가 없으면 아래의 명령어를 입력하여 저장소를 추가한다.
yum install epel-release
Y/N을 물어오는데 이 때 Y키만 눌러주면 된다.

다시 처음처럼 yum repolist를 눌러보면 epel 저장소를 볼 수 있을것이다.

이제 본격적으로 node.js를 설치해본다.
yum install nodejs 을 입력하고 엔터를 치면 아까 yum처럼 쭉 나오면서 Y/N을 물어볼 것이다.
이때도 Y만 눌러주면 된다.

이제 끝으로 npm만 설치하면 된다.
node.js에는 다양하게 개발된 package들이 존재한다.
이를 설치하기 위한 manager가 npm이다.
아래 명령어를 입력하여 NPM을 설치한다.
yum install npm

설치된 node의 버전을 보고 싶다면 node -v; 를 입력하고 엔터를 치면 된다.
설치된 npm의 버전을 보고 싶다.면 npm -v;를 입력하고 엔터를 치면 된다.

참고로 cent os 버전이 4.x면 node.js 설치가 불가능하다.
cent os 5에서부터 지원을 하는것 같긴한데 불확실하고 최소한 7이나 8정도로 업그레이드 해야 하나 보다.

역시 windows가 참 편하게 잘 만든 os다.

반응형
Posted by Hippalus
,

반응형

내 살다살다 이런 경우는 또 처음 경험하게 된다.
보통 xcode에 device를 연결하면 자동으로 애플쪽 device에 등록을 시키고 빌드 / 앱 설치가 가능하다.
그런데 어제부터 특정 시점부터 아래와 같은 오류를 내뱉으며 앱이 실장비 아이폰에 설치가 되지 않기 시작했다.

There is a problem with the request entity: A device with number '00008110-000000000' already exists on this team

Provisioning profile "iOS Team Provisioning Profile: com.mydomain.www doesn't include the currently selected device "iPhone 15" (identifier 00008110-000000000).

developer.apple.com의 devices list에 가봐도 다른 개발 아이폰들은 전부 STATUS가 정상이지만 특정 시점 이후의 아이폰들은 모두 Processing으로 떠있었다.

상단에 친절하게 파란색 영역으로 24시간부터 72시간 정도 걸리네 어쩌네가 있지만 크게 신경은 쓰지 않았다.
왜냐? 10년 넘게 아이폰 개발을 하면서 보통 이런 경우는 프로비저닝 인증서가 문제이거나 기타 애플스러운 오류였기 때문이었다.
더군다나 이번 iOS17이 출시되면서 xcode를 업그레이드 하고나니 pods까지 말썽을 일으켜 12에서 13으로 버전을 업그레이드해야 했으며 이때 pod update가 제대로 먹지 않아 Ruby까지 버전업을 시키는 등 갖은 고초를 겪은 후였다.
느닷없이 firebase쪽 pods에 DT_TOOLCHAIN_DIR 이따위 오류가 나질 않나...

참고로 cocoapods를 12에서 13으로 upgrade시키는 방법은 https://stackoverflow.com/questions/77133579/dt-toolchain-dir-cannot-be-used-to-evaluate-library-search-paths-use-toolchain 를 참고하기 바란다.
물론 위에 적었듯이 Ruby도 업그레이드 해야 하는데 실제 사용하는 system버전도 바꿔줘야 하고 cocoapods를 13으로 upgrade해줘도 이게 version을 확인해보면 여전히 12가 나타나고.. 사람을 애 먹인다.
하지만 기본 방법은 저 방법으로 진행하는게 맞는듯 싶다.
brew upgrade cocoapods
sudo gem install cocoapods
그리고 구글링으로 자주 검색되어 나오는 해결 방법들 중 단골 방법으로 임시방편을 알려주며 Podfile에서 13.0을 12.0으로 바꿔주라는 방법이 검색될텐데 무시해라.
cocoapods가 이미 13버전이 있으므로 삽질해가며 13버전으로 cocoapods를 올리면 그만이다.

  post_install do |installer|
      installer.pods_project.targets.each do |target|
          target.build_configurations.each do |config|
          config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '13.0'
        end
      end
    end



여하튼 앱을 직원들 폰에 테스트를 위해 설치해야 하는데 devices쪽에 등록이 안되고 빌드도 덩달아 해당 폰에 안되고 계속 남의 폰을 붙잡고 있을수도 없는 노릇이라 눈치가 보였지만 여러번 시도하다 어느순간 갑자기 빌드가 되었다.
애플 개발자 사이트에 접속해보니 아니나 다를까 Processing이던 상태값이 모두 사라졌다.

그리고 발견한 내용 -_-
이런 귀여운 애플 녀석들을 보았나.

https://developer.apple.com/help/account/reference/device-registration-updates/

 

Reference - Account - Apple Developer

Reference Device registration updates You need a registered device to create a development or ad hoc provisioning profile. To register a device using your developer account, you need to have the device name and device ID. Temporary processing and ineligibl

developer.apple.com

Temporary processing and ineligible test device status

Enabling registered test devices may require additional processing for new Apple Developer Program memberships or memberships renewed after expiration for one month or more. Although the device is registered during this time, the device identifier won’t be included in provisioning profiles until processing completes. Existing active memberships are not impacted by this change.

Device registration behavior

Registered test device count (per platform)Timeframe*
1 to 10 Upon registration
11 to 100 Within 24 to 72 hours

* Devices may be moved to an ineligible status for up to 30 days if the Provisioning Device Identifier was previously associated to memberships that were terminated for violating the Apple Developer Program License Agreement.

10대까진 바로 디바이스를 등록해주지만 최대치인 100개까진 등록은 해주지만 최소 하루 이상 기다리게 만든다란 내용이다.
이런 내용은 devices list에 링크를 이동시켜주던가 좀 더 자세히 알려주던가.
하여간 양놈들 일처리 방식은 (그나마 구글보단 양반이긴 하다만)

그동안 아이폰 개발을 하며 개발 디바이스를 아무리 많이 사용해도 3대 이상 사용해본적 없었는데 이번 회사에선 10여대를 설치하니 이런 삽질을 하게 되었다.

10대 이상 디바이스를 등록하려면 11대부터는 하루 기다려라.

사족으로 ruby 업그레이드 하는 방법은 이 블로그 참고하기 바람
https://ios-development.tistory.com/1202

 

rbenv를 이용한 ruby 버전 관리 방법 (with gem, bundler)

rbenv ruby 버전 관리를 할 때 사용하는 패키지 rbenv말고도 RVM으로도 ruby를 사용할 수 있지만, RVM이 기능이 많지만 rbenv가 더욱 가벼운 장점이 존재 MacOS를 설치하면 ruby가 내장되어 있지만, ruby 프로

ios-development.tistory.com

% rbenv -v
zsh: command not found: rbenv

% brew install rbenv ruby-build

현재 설치된 ruby 버전 확인
ruby -v

설치하고싶은 ruby 버전 목록 확인
rbenv install -l

원하는 버전 설치
rbenv install 3.0.5

설치한 3.0.5로 글로벌, 로컬 설정
rbenv global 3.0.5
rbenv local 3.0.5

대충 이런식이라는데 버전이야 계속 올라가니 그에 맞게 설치하면 됨.

반응형
Posted by Hippalus
,

반응형

먼저 아이폰 설정 부터 손봐줘야 한다.
설정 앱 > Safari > 고급(맨 아래에 있음) > '웹 속성' OFF를 ON으로 바꿔준다.

다음은 맥에서 Safari앱을 실행한다.
Safari를 못 찾는다면 Finder에서 응용프로그램으로 가보면 Safari가 있다.
Safari 실행 후 설정으로 이동

팝업 윈도우가 뜨면 맨 우측 상단의 고급을 눌러보자
그럼 하단에 메뉴 막대에서 개발자용 메뉴 보기 라는게 체크되어 있는지 확인하고 언체크라면 체크로 바꿔주자 

그럼 Safari의 메뉴들 중 중간 쯤 책갈피와 윈도우 사이에 개발자용이란게 뜨는걸 확인할 수 있을 것이다.

그럼 이제 개발자용을 클릭해보자.

아이폰과 맥이 케이블로 연결되어 있다면 저렇게 연결된 아이폰이 뜰것이고 >를 눌러보면 검사할 수 있는 응용 프로그램 없음 이라고 되어 있을 것이다.

Xcode에서 디버깅 할 wkWebview가 탑재된 앱을 실행하고 다시 Safari를 봐보자
그럼 아깐 검사할 수 있는 응용 프로그램 없음 이라고 되어 있던 곳에 우리의 앱이 보여질 것이다.
거기에 추가로 호출하고 있는 웹페이지까지 보여진다.
만약 테스트 하고 있는 아이폰의 OS가 최신버전인 16.4 버전 이후라면 아래 코드를 webview를 생성하는 곳에 살포시 넣어준다.
        if #available(iOS 16.4, *) {
            webView.isInspectable = true
        } else {
            // Fallback on earlier versions
        }
난 didload에서 wkWebview를 addsub해주고 있기 때문에 didload에 넣어줬다.

앱에서 웹뷰의 링크들을 요리조리 눌러보다 보면 오류가 있는 페이지에선 이렇게 오류들이 뜰 것이다.
마치 크롬의 개발자 도구처럼 말이다.

여러가지 웹 사이트내 오류가 확인되고 있는 모습니다.

난 이번에 골탕 먹은게 뭐였냐면 ATS 때문이었다.
개발서버엔 SSL적용이 잘 되지 않았다.
하지만 실서버엔 SSL이 적용 되었다.
따라서 plist.info에 ATS 예외 도메인 처리를 해두었다.
그런데 사이트는 뜨지만 이상하게 자바스크립트단에서 자꾸 막히는 증상이 발현되었기 때문에 도무지 이해가 안 갔는데
기존 소스들이 jQuery js파일을 다운받지 않고 cdn을 사용하여 실시간으로 받아오고 있었고 이 cdn호출시 http로 불러와졌기 때문에 이런 오류가 나는 구조상의 문제였다.

참고로 화면 캡쳐는 이미 ATS 처리를 한 직후의 캡쳐라 jquery오류는 나타나지 않는 모습니다.


오류가 확인되었으니 마찬가지로 예외 도메인으로 등록해주면 되니 아래처럼 plist.info를 설정해주니 
App Transport Security Settings
Allow Arbitrary Loads NO
Exception Domains
   code.jquery.com
      NSTemporaryExceptionMinimumTLSVersion TLSv1.2
      NSIncludesSubdomains YES
      NSExceptionAllowsInsecureHTTPLoads YES
      NSExceptionRequiresForwardSecrecy NO

참 고생했다.

반응형
Posted by Hippalus
,