[问题] 部署到server后找不到档案

楼主: qazsd ( )   2017-09-04 16:19:53
请问一下
Maven专案资料夹结构如下:
Project
├src/main/java
│ └ com.abc.xyz
│ └Auth.java
└src/main/resources
└certs
└credential.p12
Auth.java里有段程式码用来验证:
=====================================================================
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(SERVICE_ACCOUNT_EMAIL)
.setServiceAccountScopes(Collections.singleton(
CalendarScopes.CALENDAR_READONLY))
.setServiceAccountPrivateKeyFromP12File(new File("credential.p12"))
.setServiceAccountUser(SERVICE_ACCOUNT_USER)
.build();
=====================================================================
该专案档的jar部署到Server上后
会出现找不到credential档案的错误讯息
想请问credential档案应该放在专案或server哪里才能被找到?
又该怎么指定路径呢?
作者: ssccg (23)   2017-09-04 16:36:00
resources里面的用Class.getResource,路径是从resources目录下开始的绝对路径或相对于该Class package的路径你的可用getClass().getResource("/certs/credential.p12")你用的new File传相对路径,是相对于java的执行路径放在resources中的档案会包在jar档里,不会直接在档案系统
楼主: qazsd ( )   2017-09-04 17:08:00
File file = new File(classLoader.getResource("cert.p12").getFile());String filePath = file.getAbsolutePath();上面那样对吗?在本机跑跟server跑都通用吗?
作者: ssccg (23)   2017-09-04 18:31:00

Links booklink

Contact Us: admin [ a t ] ucptt.com