STS, spring boot, gradle build 삽질 여행기
최근 일주일동안은 삽질의 연속이었다.
특히나 그중에서 최고의 삽질은 spring boot 웹서버 구축이었다.
결국엔 해냈다.
이번 삽질을 통해 확실하게 느낀것은,
역시나 삽질은 아무나 하는게 아니다 라는 것이고, 삽질끝에 얻은 결론보다는 삽질을 하는 과정속에서 깨달은 내용들이 더욱더 큰 내공으로 쌓인다는 것.
웹개발의 발전은 하루하루가 다르기 때문에, 매번 학습해서 따라가기가 여간 번거로운게 아니다.
이번 일주일간의 삽질은
npm + sts + spring boot + gradle 로 서버구축이었는데,
자바웹의 새로운 패러다임을 느끼게 한 여정이었다.
기존의 자바웹은
소스작성 -> 배포 -> 서비스
형식이었는데,
spring boot 의 방식은
소스작성 -> 서비스
형식이다.
php 나 asp 와 같은 스크립트 언어처럼 코드수정후 서버 리부팅없이 바로 서비스에 적용이 되는 것이다.
기존 자바의 컴파일 루트를 생각한다면 생각하기 어려운 패러다임이다.
아래 스샷은 windows 환경에서 gradle 컴파일 성공후, 로컬웹 서비스에 성공한 스샷이다.
정말 이 늦은 새벽타임까지 고생한 보람이 있는 결과물이었다.
C:\Users\wook>npm i generator-jhipster
npm WARN deprecated npmconf@2.1.2: this package has been reintegrated into npm and is now out of date with respect to npm
> generator-jhipster@4.5.4 install C:\Users\wook\node_modules\generator-jhipster
> tabtab install --name jhipster --auto
tabtab:commands User shell undefined not supported, skipping completion install +0ms
> spawn-sync@1.0.15 postinstall C:\Users\wook\node_modules\spawn-sync
> node postinstall
> yo@1.8.5 postinstall C:\Users\wook\node_modules\yo
> yodoctor
Yeoman Doctor
Running sanity checks on your system
√ Global configuration file is valid
√ NODE_PATH matches the npm root
√ Node.js version
√ No .bowerrc file in home directory
√ No .yo-rc.json file in home directory
√ npm version
Everything looks all right!
C:\Users\wook
`-- generator-jhipster@4.5.4
+-- chalk@1.1.3
| +-- ansi-styles@2.2.1
| +-- escape-string-regexp@1.0.5
| +-- has-ansi@2.0.0
| | `-- ansi-regex@2.1.1
| +-- strip-ansi@3.0.1
| `-- supports-color@2.0.0
+-- cheerio@0.22.0
| +-- css-select@1.2.0
| | +-- boolbase@1.0.0
| | +-- css-what@2.1.0
| | +-- domutils@1.5.1
| | `-- nth-check@1.0.1
| +-- dom-serializer@0.1.0
| | `-- domelementtype@1.1.3
| +-- entities@1.1.1
| +-- htmlparser2@3.9.2
| | +-- domelementtype@1.3.0
| | +-- domhandler@2.4.1
| | `-- readable-stream@2.2.11
| | +-- core-util-is@1.0.2
| | +-- isarray@1.0.0
| | +-- process-nextick-args@1.0.7
| | +-- string_decoder@1.0.2
| | `-- util-deprecate@1.0.2
| +-- lodash.assignin@4.2.0
| +-- lodash.bind@4.2.1
| +-- lodash.defaults@4.2.0
| +-- lodash.filter@4.6.0
| +-- lodash.flatten@4.4.0
| +-- lodash.foreach@4.5.0
| +-- lodash.map@4.6.0
| +-- lodash.merge@4.6.0
| +-- lodash.pick@4.4.0
| +-- lodash.reduce@4.6.0
| +-- lodash.reject@4.6.0
| `-- lodash.some@4.6.0
+-- commander@2.9.0
| `-- graceful-readlink@1.0.1
+-- didyoumean@1.2.1
+-- ejs@2.5.6
+-- glob@7.1.1
| +-- fs.realpath@1.0.0
| +-- inflight@1.0.6
| | `-- wrappy@1.0.2
| +-- inherits@2.0.3
| +-- minimatch@3.0.4
| | `-- brace-expansion@1.1.8
| | +-- balanced-match@1.0.0
| | `-- concat-map@0.0.1
| +-- once@1.4.0
| `-- path-is-absolute@1.0.1
+-- html-wiring@1.2.0
| +-- cheerio@0.19.0
| | +-- css-select@1.0.0
| | | +-- css-what@1.0.0
| | | `-- domutils@1.4.3
| | +-- htmlparser2@3.8.3
| | | +-- domhandler@2.3.0
| | | +-- domutils@1.5.1
| | | +-- entities@1.0.0
| | | `-- readable-stream@1.1.14
| | | +-- isarray@0.0.1
| | | `-- string_decoder@0.10.31
| | `-- lodash@3.10.1
| `-- detect-newline@1.0.3
| `-- get-stdin@4.0.1
+-- insight@0.8.4
| +-- async@1.5.2
| +-- configstore@1.4.0
| | +-- graceful-fs@4.1.11
| | +-- os-tmpdir@1.0.2
| | +-- osenv@0.1.4
| | +-- uuid@2.0.3
| | +-- write-file-atomic@1.3.4
| | | +-- imurmurhash@0.1.4
| | | `-- slide@1.1.6
| | `-- xdg-basedir@2.0.0
| +-- inquirer@0.10.1
| | +-- ansi-escapes@1.4.0
| | +-- cli-cursor@1.0.2
| | | `-- restore-cursor@1.0.1
| | | `-- exit-hook@1.1.1
| | +-- cli-width@1.1.1
| | +-- lodash@3.10.1
| | +-- readline2@1.0.1
| | | +-- code-point-at@1.1.0
| | | +-- is-fullwidth-code-point@1.0.0
| | | `-- mute-stream@0.0.5
| | +-- run-async@0.1.0
| | +-- rx-lite@3.1.2
| | `-- through@2.3.8
| +-- lodash.debounce@3.1.1
| | `-- lodash._getnative@3.9.1
| +-- object-assign@4.1.1
| +-- os-name@1.0.3
| | +-- osx-release@1.1.0
| | `-- win-release@1.1.1
| +-- request@2.81.0
| | +-- aws-sign2@0.6.0
| | +-- aws4@1.6.0
| | +-- caseless@0.12.0
| | +-- combined-stream@1.0.5
| | | `-- delayed-stream@1.0.0
| | +-- extend@3.0.1
| | +-- forever-agent@0.6.1
| | +-- form-data@2.1.4
| | | `-- asynckit@0.4.0
| | +-- har-validator@4.2.1
| | | +-- ajv@4.11.8
| | | | +-- co@4.6.0
| | | | `-- json-stable-stringify@1.0.1
| | | | `-- jsonify@0.0.0
| | | `-- har-schema@1.0.5
| | +-- hawk@3.1.3
| | | +-- boom@2.10.1
| | | +-- cryptiles@2.0.5
| | | +-- hoek@2.16.3
| | | `-- sntp@1.0.9
| | +-- http-signature@1.1.1
| | | +-- assert-plus@0.2.0
| | | +-- jsprim@1.4.0
| | | | +-- assert-plus@1.0.0
| | | | +-- extsprintf@1.0.2
| | | | +-- json-schema@0.2.3
| | | | `-- verror@1.3.6
| | | `-- sshpk@1.13.1
| | | +-- asn1@0.2.3
| | | +-- assert-plus@1.0.0
| | | +-- bcrypt-pbkdf@1.0.1
| | | +-- dashdash@1.14.1
| | | | `-- assert-plus@1.0.0
| | | +-- ecc-jsbn@0.1.1
| | | +-- getpass@0.1.7
| | | | `-- assert-plus@1.0.0
| | | +-- jsbn@0.1.1
| | | `-- tweetnacl@0.14.5
| | +-- is-typedarray@1.0.0
| | +-- isstream@0.1.2
| | +-- json-stringify-safe@5.0.1
| | +-- mime-types@2.1.15
| | | `-- mime-db@1.27.0
| | +-- oauth-sign@0.8.2
| | +-- performance-now@0.2.0
| | +-- qs@6.4.0
| | +-- safe-buffer@5.0.1
| | +-- stringstream@0.0.5
| | `-- tunnel-agent@0.6.0
| +-- tough-cookie@2.3.2
| | `-- punycode@1.4.1
| `-- uuid@3.1.0
+-- jhipster-core@1.3.3
+-- js-yaml@3.8.3
| +-- argparse@1.0.9
| | `-- sprintf-js@1.0.3
| `-- esprima@3.1.3
+-- lodash@4.17.4
+-- mkdirp@0.5.1
| `-- minimist@0.0.8
+-- pluralize@4.0.0
+-- randexp@0.4.5
| +-- discontinuous-range@1.0.0
| `-- ret@0.1.14
+-- semver@5.3.0
+-- shelljs@0.7.7
| +-- interpret@1.0.3
| `-- rechoir@0.6.2
| `-- resolve@1.3.3
| `-- path-parse@1.0.5
+-- tabtab@2.2.2
| +-- debug@2.6.8
| | `-- ms@2.0.0
| +-- inquirer@1.2.3
| | +-- cli-width@2.1.0
| | +-- external-editor@1.1.1
| | | +-- spawn-sync@1.0.15
| | | | +-- concat-stream@1.6.0
| | | | | `-- typedarray@0.0.6
| | | | `-- os-shim@0.1.3
| | | `-- tmp@0.0.29
| | +-- mute-stream@0.0.6
| | +-- pinkie-promise@2.0.1
| | | `-- pinkie@2.0.4
| | +-- run-async@2.3.0
| | +-- rx@4.1.0
| | `-- string-width@1.0.2
| +-- lodash.difference@4.5.0
| +-- lodash.uniq@4.5.0
| +-- minimist@1.2.0
| `-- npmlog@2.0.4
| +-- ansi@0.3.1
| +-- are-we-there-yet@1.1.4
| | `-- delegates@1.0.0
| `-- gauge@1.2.7
| +-- has-unicode@2.0.1
| +-- lodash.pad@4.5.1
| +-- lodash.padend@4.6.1
| `-- lodash.padstart@4.6.1
+-- yeoman-environment@1.6.6
| +-- diff@2.2.3
| +-- globby@4.1.0
| | +-- array-union@1.0.2
| | | `-- array-uniq@1.0.3
| | +-- arrify@1.0.1
| | +-- glob@6.0.4
| | `-- pify@2.3.0
| +-- grouped-queue@0.3.3
| +-- inquirer@1.2.3
| | +-- cli-width@2.1.0
| | +-- mute-stream@0.0.6
| | `-- run-async@2.3.0
| +-- log-symbols@1.0.2
| +-- mem-fs@1.1.3
| | +-- vinyl@1.2.0
| | | +-- clone@1.0.2
| | | +-- clone-stats@0.0.1
| | | `-- replace-ext@0.0.1
| | `-- vinyl-file@2.0.0
| | +-- strip-bom@2.0.0
| | | `-- is-utf8@0.2.1
| | `-- strip-bom-stream@2.0.0
| | `-- first-chunk-stream@2.0.0
| +-- text-table@0.2.0
| `-- untildify@2.1.0
| `-- os-homedir@1.0.2
+-- yeoman-generator@1.1.1
| +-- async@2.4.1
| +-- class-extend@0.1.2
| | `-- object-assign@2.1.1
| +-- cli-table@0.3.1
| | `-- colors@1.0.3
| +-- cross-spawn@5.1.0
| | +-- lru-cache@4.1.1
| | | +-- pseudomap@1.0.2
| | | `-- yallist@2.1.2
| | +-- shebang-command@1.2.0
| | | `-- shebang-regex@1.0.0
| | `-- which@1.2.14
| | `-- isexe@2.0.0
| +-- dargs@5.1.0
| +-- dateformat@2.0.0
| +-- detect-conflict@1.0.1
| +-- error@7.0.2
| | +-- string-template@0.2.1
| | `-- xtend@4.0.1
| +-- find-up@2.1.0
| | `-- locate-path@2.0.0
| | `-- p-locate@2.0.0
| | `-- p-limit@1.1.0
| +-- github-username@3.0.0
| | `-- gh-got@5.0.0
| | +-- got@6.7.1
| | | +-- duplexer3@0.1.4
| | | +-- get-stream@3.0.0
| | | +-- timed-out@4.0.1
| | | `-- unzip-response@2.0.1
| | `-- is-plain-obj@1.1.0
| +-- istextorbinary@2.1.0
| | +-- binaryextensions@2.0.0
| | +-- editions@1.3.3
| | `-- textextensions@2.1.0
| +-- mem-fs-editor@3.0.2
| | +-- commondir@1.0.1
| | +-- deep-extend@0.4.2
| | +-- globby@6.1.0
| | +-- multimatch@2.1.0
| | | `-- array-differ@1.0.0
| | `-- vinyl@2.0.2
| | +-- clone-buffer@1.0.0
| | +-- clone-stats@1.0.0
| | +-- cloneable-readable@1.0.0
| | +-- remove-trailing-separator@1.0.2
| | `-- replace-ext@1.0.0
| +-- path-exists@3.0.0
| +-- pretty-bytes@4.0.2
| +-- read-chunk@2.0.0
| +-- read-pkg-up@2.0.0
| | `-- read-pkg@2.0.0
| | +-- load-json-file@2.0.0
| | | `-- strip-bom@3.0.0
| | `-- path-type@2.0.0
| +-- rimraf@2.6.1
| +-- run-async@2.3.0
| | `-- is-promise@2.1.0
| +-- through2@2.0.3
| `-- user-home@2.0.0
`-- yo@1.8.5
+-- cli-list@0.1.8
+-- cross-spawn@3.0.1
+-- figures@1.7.0
+-- fullname@2.1.0
| `-- npmconf@2.1.2
| +-- config-chain@1.1.11
| | `-- proto-list@1.2.4
| +-- ini@1.3.4
| +-- nopt@3.0.6
| | `-- abbrev@1.1.0
| +-- once@1.3.3
| +-- semver@4.3.6
| `-- uid-number@0.0.5
+-- got@5.7.1
| +-- create-error-class@3.0.2
| | `-- capture-stack-trace@1.0.0
| +-- duplexer2@0.1.4
| +-- is-redirect@1.0.0
| +-- is-retry-allowed@1.1.0
| +-- is-stream@1.1.0
| +-- lowercase-keys@1.0.0
| +-- node-status-codes@1.0.0
| +-- parse-json@2.2.0
| | `-- error-ex@1.3.1
| | `-- is-arrayish@0.2.1
| +-- read-all-stream@3.1.0
| +-- timed-out@3.1.3
| +-- unzip-response@1.0.2
| `-- url-parse-lax@1.0.0
| `-- prepend-http@1.0.4
+-- humanize-string@1.0.1
| `-- decamelize@1.2.0
+-- inquirer@0.11.4
+-- insight@0.7.0
| `-- inquirer@0.10.1
+-- lodash@3.10.1
+-- meow@3.7.0
| +-- camelcase-keys@2.1.0
| | `-- camelcase@2.1.1
| +-- loud-rejection@1.6.0
| | +-- currently-unhandled@0.4.1
| | | `-- array-find-index@1.0.2
| | `-- signal-exit@3.0.2
| +-- map-obj@1.0.1
| +-- normalize-package-data@2.3.8
| | +-- hosted-git-info@2.4.2
| | +-- is-builtin-module@1.0.0
| | | `-- builtin-modules@1.1.1
| | `-- validate-npm-package-license@3.0.1
| | +-- spdx-correct@1.0.2
| | | `-- spdx-license-ids@1.2.2
| | `-- spdx-expression-parse@1.0.4
| +-- read-pkg-up@1.0.1
| | +-- find-up@1.1.2
| | | `-- path-exists@2.1.0
| | `-- read-pkg@1.1.0
| | +-- load-json-file@1.1.0
| | `-- path-type@1.1.0
| +-- redent@1.0.0
| | +-- indent-string@2.1.0
| | `-- strip-indent@1.0.1
| `-- trim-newlines@1.0.0
+-- npm-keyword@4.2.0
| +-- got@5.7.1
| | +-- timed-out@3.1.3
| | `-- unzip-response@1.0.2
| `-- registry-url@3.1.0
| `-- rc@1.2.1
| `-- strip-json-comments@2.0.1
+-- opn@3.0.3
+-- package-json@2.4.0
| +-- got@5.7.1
| | +-- timed-out@3.1.3
| | `-- unzip-response@1.0.2
| `-- registry-auth-token@3.3.1
+-- parse-help@0.1.1
| `-- execall@1.0.0
| `-- clone-regexp@1.0.0
| +-- is-regexp@1.0.0
| `-- is-supported-regexp-flag@1.0.0
+-- read-pkg-up@1.0.1
| +-- find-up@1.1.2
| | `-- path-exists@2.1.0
| `-- read-pkg@1.1.0
| +-- load-json-file@1.1.0
| `-- path-type@1.1.0
+-- repeating@2.0.1
| `-- is-finite@1.0.2
| `-- number-is-nan@1.0.1
+-- root-check@1.0.0
| +-- downgrade-root@1.2.2
| | +-- default-uid@1.0.0
| | `-- is-root@1.0.0
| `-- sudo-block@1.2.0
| `-- is-docker@1.1.0
+-- sort-on@1.3.0
| `-- dot-prop@2.4.0
| `-- is-obj@1.0.1
+-- string-length@1.0.1
+-- tabtab@1.3.2
| `-- inquirer@1.2.3
| +-- cli-width@2.1.0
| +-- lodash@4.17.4
| +-- mute-stream@0.0.6
| `-- run-async@2.3.0
+-- titleize@1.0.0
+-- update-notifier@0.6.3
| +-- boxen@0.3.1
| | +-- filled-array@1.1.0
| | `-- widest-line@1.0.0
| +-- configstore@2.1.0
| | +-- dot-prop@3.0.0
| | `-- uuid@2.0.3
| +-- is-npm@1.0.0
| +-- latest-version@2.0.0
| `-- semver-diff@2.1.0
+-- yeoman-character@1.1.0
| `-- supports-color@3.2.3
| `-- has-flag@1.0.0
+-- yeoman-doctor@2.1.0
| +-- bin-version-check@2.1.0
| | +-- bin-version@1.0.4
| | | `-- find-versions@1.2.1
| | | `-- semver-regex@1.0.0
| | +-- semver@4.3.6
| | `-- semver-truncate@1.1.2
| +-- each-async@1.1.1
| | +-- onetime@1.1.0
| | `-- set-immediate-shim@1.0.1
| +-- object-values@1.0.0
| `-- twig@0.8.9
| `-- walk@2.3.9
| `-- foreachasync@3.0.0
`-- yosay@1.2.1
+-- cli-boxes@1.0.0
+-- pad-component@0.0.1
+-- taketalk@1.0.0
`-- wrap-ansi@2.1.0
npm WARN enoent ENOENT: no such file or directory, open 'C:\Users\wook\package.json'
npm WARN wook No description
npm WARN wook No repository field.
npm WARN wook No README data
npm WARN wook No license field.
######################################################################################################
D:\STS\workspace\testapp>npm install -g bower
npm WARN deprecated bower@1.8.0: ..psst! While Bower is maintained, we recommend Yarn and Webpack for *new* front-end projects! Yarn's advantage is security and reliability, and Webpack's is support for both CommonJS and AMD projects. Currently there's no migration path but we hope you'll help us figure out one.
C:\Users\wook\AppData\Roaming\npm\bower -> C:\Users\wook\AppData\Roaming\npm\node_modules\bower\bin\bower
C:\Users\wook\AppData\Roaming\npm
`-- bower@1.8.0
######################################################################################################
D:\STS\workspace\testapp>gradlew
Starting the Unit and Integration test
:bower
bower angular-cookies extra-resolution Unnecessary resolution: angular-cookies#1.4.8
:processResources UP-TO-DATE
:compileJava UP-TO-DATE
:compileScala UP-TO-DATE
:classes UP-TO-DATE
:findMainClass
:bootRun
?? ?? ?? ???????? ??????? ?????? ???????? ???????? ???????
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
?? ???????? ?? ??????? ????? ?? ?????? ???????
?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??
?????? ?? ?? ???????? ?? ?????? ?? ???????? ?? ??
:: JHipster ? :: Running Spring Boot 1.3.1.RELEASE ::
:: http://jhipster.github.io ::
[2017-06-19 03:30:21] [INFO] com.testapp.Application - Starting Application on DESKTOP-79S1LVH with PID 9876 (D:\STS\workspace\testapp\build\classes\main started by wook in D:\STS\workspace\testapp)
[2017-06-19 03:30:21] [DEBUG] com.testapp.Application - Running with Spring Boot v1.3.1.RELEASE, Spring v4.2.4.RELEASE
[2017-06-19 03:30:21] [INFO] com.testapp.Application - The following profiles are active: dev
[2017-06-19 03:30:30] [DEBUG] com.testapp.config.AsyncConfiguration - Creating Async Task Executor
[2017-06-19 03:30:31] [DEBUG] com.testapp.config.MetricsConfiguration - Registering JVM gauges
[2017-06-19 03:30:31] [DEBUG] com.testapp.config.MetricsConfiguration - Initializing Metrics JMX reporting
[2017-06-19 03:30:34] [INFO] com.testapp.config.WebConfigurer - Web application configuration, using profiles: [dev]
[2017-06-19 03:30:34] [DEBUG] com.testapp.config.WebConfigurer - Initializing Metrics registries
[2017-06-19 03:30:34] [DEBUG] com.testapp.config.WebConfigurer - Registering Metrics Filter
[2017-06-19 03:30:34] [DEBUG] com.testapp.config.WebConfigurer - Registering Metrics Servlet
[2017-06-19 03:30:34] [INFO] com.testapp.config.WebConfigurer - Web application fully configured
[2017-06-19 03:30:35] [DEBUG] com.testapp.config.DatabaseConfiguration - Configuring Datasource
[2017-06-19 03:30:37] [DEBUG] com.testapp.config.DatabaseConfiguration - Configuring Liquibase
[2017-06-19 03:30:38] [WARN] com.testapp.config.liquibase.AsyncSpringLiquibase - Starting Liquibase asynchronously, your database might not be ready at startup!
[2017-06-19 03:30:43] [DEBUG] com.testapp.config.liquibase.AsyncSpringLiquibase - Started Liquibase in 5741 ms
[2017-06-19 03:30:48] [INFO] com.testapp.Application - Running with Spring profile(s) : [dev]
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Warning Code: 1292, SQLState: 22007
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect datetime value: ''
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Warning Code: 1292, SQLState: 22007
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect datetime value: ''
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Warning Code: 1292, SQLState: 22007
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect datetime value: ''
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Warning Code: 1292, SQLState: 22007
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect datetime value: ''
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Warning Code: 1292, SQLState: 22007
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect datetime value: ''
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - SQL Warning Code: 1292, SQLState: 22007
[2017-06-19 03:30:49] [WARN] org.hibernate.engine.jdbc.spi.SqlExceptionHelper - Incorrect datetime value: ''
[2017-06-19 03:30:49] [WARN] org.hibernate.dialect.function.TemplateRenderer - HHH000174: Function template anticipated 3 arguments, but 2 arguments encountered
[2017-06-19 03:30:49] [WARN] org.hibernate.dialect.function.TemplateRenderer - HHH000174: Function template anticipated 3 arguments, but 2 arguments encountered
[2017-06-19 03:30:49] [WARN] org.hibernate.dialect.function.TemplateRenderer - HHH000174: Function template anticipated 3 arguments, but 2 arguments encountered
[2017-06-19 03:30:49] [WARN] org.hibernate.dialect.function.TemplateRenderer - HHH000174: Function template anticipated 3 arguments, but 2 arguments encountered
[2017-06-19 03:30:51] [INFO] com.testapp.config.ThymeleafConfiguration - loading non-reloadable mail messages resources
[2017-06-19 03:30:55] [DEBUG] com.testapp.config.CacheConfiguration - Starting Ehcache
[2017-06-19 03:30:56] [DEBUG] com.testapp.config.CacheConfiguration - Registering Ehcache Metrics gauges
[2017-06-19 03:30:56] [DEBUG] com.testapp.config.apidoc.SwaggerConfiguration - Starting Swagger
[2017-06-19 03:30:56] [DEBUG] com.testapp.config.apidoc.SwaggerConfiguration - Started Swagger in 52 ms
[2017-06-19 03:30:57] [DEBUG] com.testapp.aop.logging.LoggingAspect - Enter: com.testapp.repository.CustomAuditEventRepository.auditEventRepository() with argument[s] = []
[2017-06-19 03:30:57] [DEBUG] com.testapp.aop.logging.LoggingAspect - Exit: com.testapp.repository.CustomAuditEventRepository.auditEventRepository() with result = com.testapp.repository.CustomAuditEventRepository$1@15150de9
[2017-06-19 03:31:05] [INFO] com.testapp.Application - Started Application in 45.91 seconds (JVM running for 47.031)
[2017-06-19 03:31:05] [INFO] com.testapp.Application - Access URLs:
----------------------------------------------------------
Local: http://127.0.0.1:8090
External: http://192.168.219.104:8090
----------------------------------------------------------