반응형

Java 10

maven-shade-plugin

예전에는 maven-assembly-plugin을 사용해서 uber jar를 만들었는데 최근에 필요해서 다시 검색해 보니 maven-shade-plugin이 더 많이 나오는 것으로 보인다. 기본설정으로 만들어진 uber jar의 경우 spark 에서 사용하려고 할 시 manifest 충돌 관련 보안 에러가 발생해서, 홈페이지에서 제공하는 manifest 제외하는 기본 설정 코드를 기록삼아 올려본다. (링크) org.apache.maven.plugins maven-shade-plugin 3.2.4 package shade junit:junit junit/framework/** org/junit/** org/junit/experimental/** org/junit/runners/** *:* META-INF/..

Programming/Java 2020.11.06

Embed Python in java (jep) 환경 설정

Embed Python in Java (jep) jep는 간략하게 설명하면 java로 python interpreter를 구현하여 C / C++ 기반의 library와는 호환이 어려웠던 jython과는 다르게, JNI를 통해 CPython을 호출함으로써 C / C++ 기반의 python library도 java 상에서 실행이 가능한 프로젝트이다. Getting-Started 를 따라서 설치를 진행하다보면, 별도의 python library 사용 없는 간단한 python 코드의 경우 쉽게 실행 가능하다 Main.java:import jep.Jep; public class Main { public static void main(String[] args) throws Exception{ try(Jep jep ..

Programming/Python 2017.04.05

초간단 Maven local repository 만들기

준비물 : maven 3.x, nodejs (0.10.36 버전 사용) 1. 의존성으로 추가하고자 하는 jar 파일을 자신의 maven local repository(~/.m2/repository) 에 등록한다. from http://www.mkyong.com/maven/how-to-include-library-manully-into-maven-local-repository/ $ mvn install:install-file -Dfile={file-path} -DgroupId={group id}-DartifactId={artifactId} -Dversion={version} -Dpackaing=jar 가령 작성자의 경우는 원하는 파일을 다음과 같이 추가하였다: $ mvn install:install-fil..

Programming/Java 2016.01.07

Maven in 5 Minutes

http://maven.apache.org/guides/getting-started/maven-in-five-minutes.html Prerequisites 그냥 computer에 설치할줄만 알면 된다 Installation Maven은 java tool 이므로 꼭 Java가 설치돼있어야 한다. 첫번째, Maven을 다운로드 받고 installation instructions을 따라라. 그리고, cmd나 terminal에 다음을 쳐봐라 $ mvn -version 설치된 Maven 버전이 출력된다, 예를 들어: Apache Maven 3.0.5 Maven home: /usr/share/maven Java version: 1.7.0_72, vendor: Oracle Corporation Java home: ..

Programming/Java 2015.01.21

Android OpenGL ES 1.1에서 사각형 그리기

OpenGL에서는 Vertex의 시작과 끝을 명시하고 점을 찍으면 객체가 만들어 졌던것 같은데 ES는 그렇지 않습니다. 적어도 안드로이드에서는, ByteBuffer를 이용하여 vertex의 내용을 보여줘야 합니다. private float vertices[] = { -1.0f, 1.0f, 0.0f, // 0, Top Left -1.0f, -1.0f, 0.0f, // 1, Bottom Left 1.0f, -1.0f, 0.0f, // 2, Bottom Right 1.0f, 1.0f, 0.0f, // 3, Top Right}; // a float is 4 bytes, therefore we multiply the number if vertices with 4.ByteBuffer vbb = ByteBuffer...

Programming 2012.01.05

Android OpenGL ES 사용에 앞서 알아두면 좋은것

1. OpenGL ES 1.1과 2.0의 차이점 간단하게 차이점을 적어봅시다. OpenGL ES 1.1 : OpenGL 1.5 버전과 대응. 1.0버전의 +a 버전. 고정파이프라인 함수들을 사용합니다. 컴퓨터 그래픽스 수업에서 배우시는 것들. OpenGL ES 2.0 : OpenGL 2.0 버전과 대응. 프로그래밍가능한 하드웨어 함수들을 사용. 쉐이더 언어를 사용합니다. 가장 중요한 것은 차이점에서 적었듯이 두 버전의 OpenGL에서 사용하는 함수의 종류가 완전히 다르기 때문에 호환성은 없습니다. 무엇을 더 많이 쓰느냐? 라고 한다면 일단 단순한 경우에는 OpenGL ES 1.1 버전이 아닐까 합니다. 이는 아무래도 그래픽스를 수업등을 통하여 맛만 보고 넘어가는 경우 배웠던 환경과 매우 비슷하기 떄문이라..

Programming 2012.01.05

[Java]File Class를 사용해서 Directory 검색하기

안드로이드에서 SD카드에 파일을 추가해놓으면 자동으로 리스트에 추가하는것을 하고싶어서 파일관련 기능이 있나 조사하려다가, 그냥 귀찮아서(..) 물어보니 java쪽을 찾아보라고 합니다. 그래서 찾아보니, 파일 열고 닫을때만 사용하던 File 클래스가 사실 디렉토리도 접근이 가능하다는 것을 보고 얼른 짜서 돌려봤습니다. 물론, 잘 돌아갑니다. 참고로, 디렉토리를 탐색하는 setFile 메소드는 재귀호출을 통해 자신의 하위 디렉토리까지 검색을 합니다. 그리고 파일의 확장자를 돌려주려고 만든 getFileNameExtension 메소드는 subString을 사용하기 때문에 웬만해선 바꾸고 싶은데 딱히 떠오르는게 없네요. 안드로이드 부분은 그냥 테스트해본 것이니 크게 신경쓰실 필요없습니다. public class..

Programming/Java 2011.02.15

[Android] Soundpool 사용하기 + 사용하면서 안 것.

Soundpool을 사용하는것은 안드로이펍에 너무 잘 나와있어서 더 설명하는건 의미 없는 것 같습니다. 그 외에 Soundpool에 대해 몇가지 더 설명을 하자면 1. Soundpool은 소리가 자동으로 겹친다. java에서 음악파일을 overlap 시켜서 실행하려다 실패해서 안드로이드에서 어떻게 하려나, 생각했는데 Soundpool은 알아서 실행 시킬 때 마다 overlap 돼서 나옵니다. 다수의 효과음을 겹쳐서 들려줘야 했는데, 편하게 해결. 2. 하나의 Soundpool에서 여러개의 음악파일을 열어도 overlap 된다. test해보기 전에는 Soundpool을 여러개 만들어야 하나, 생각했었는데 해보니까 잘 됩니다. 밑에 Source code에서 버튼 하나는 1번파일을, 다른 거 하나는 2번파일을..

Programming 2011.02.14

[Java]Apache POI로 Java에서 Excel 내용 읽기

= Apache POI? = [Apache POI - the Java API for Microsoft Documents] 워드나 파워포인트, 엑셀에 저장한 데이터를 Java로 가지고 와서 사용하는 패키지. 기능 상 제약이 많지만, 경우에 따라서 유용하게 사용할 수 있습니다. 엑셀만이라면 Jxl 이라는 패키지도 존재하지만 android에서는 jxl을 사용할 경우 한글을 제대로 가지고 오지 못하여 apache POI를 사용해야 합니다. 안드로이드에서 테스트 몇 번 해본 거 뿐이라서 한글 문제점을 해결할 수 있다면 (혹은 한글을 사용하지 않는다면) jxl을 사용하는것도 좋습니다. 2010년 11월 12일 기준 bin 압축 파일 중 poi-3.7-20101029.jar 파일이 관련 API를 가지고 있는 jar ..

Programming/Java 2010.11.16

[Android]Android MapView 간단한 정리.

= XML에 추가해야 하는 것들 =MapView API 얻기1.AndroidManifest.xml 의 application 영역에을 추가해 줍니다.2.android.permission.INTERNETandroid.permission.ACCESS_COARSE_LOCATIONandroid.permission.ACCESS_FINE_LOCATION3개의 유저권한이 필요합니다.3.형식으로 Layout에 View를 추가할 수 있습니다.Android SDK 에서 제공하는 기본 Layout에는 존재하지 않으니 별도로 추가해서 사용해야 합니다.= 코드 = * Activity는 MapActivity로 수정해야 합니다.. ex) public class mapActivity extends MapActivity { * MapV..

Programming 2010.11.04
반응형