我是Spring Boot的新手。我有这个emailprop.properties
在src/main/resource
:Spring Boot从app.properties下载另一个文件
//your private key
mail.smtp.dkim.privatekey=classpath:/emailproperties/private.key.der
但我得到的错误作为
类路径:\电子邮件属性\ private.key.der(文件名,目录名 ,或卷标语法是不正确的)
如何正确加载此文件?
更新-1
我的Java代码
dkimSigner = new DKIMSigner(emailProps.getProperty("mail.smtp.dkim.signingdomain"), emailProps.getProperty("mail.smtp.dkim.selector"), emailProps.getProperty("mail.smtp.dkim.privatekey"));
其工作
"D:\\WorkShop\\MyDemoProj\\EmailService\\src\\main\\resources\\private.key.der"
相反emailProps.getProperty("mail.smtp.dkim.privatekey")
作为
更新-2
我试图Java代码
String data = ""; ClassPathResource cpr = new ClassPathResource("private.key.der"); try { byte[] bdata = FileCopyUtils.copyToByteArray(cpr.getInputStream()); data = new String(bdata, StandardCharsets.UTF_8); } catch (IOException e) { e.printStackTrace(); } dkimSigner = new DKIMSigner(emailProps.getProperty("mail.smtp.dkim.signingdomain"), emailProps.getProperty("mail.smtp.dkim.selector"),data);
错误是:
java.io.FileNotFoundException: class path resource [classpath:private.key.der] cannot be resolved to URL because it does not exist
试过代码是:
ClassPathResource resource = new ClassPathResource(emailProps.getProperty("mail.smtp.dkim.privatekey")); File file = resource.getFile(); String absolutePath = file.getAbsolutePath();
还是同样的错误..
请更新答案..
首先,你如何试图从资源文件夹加载文件?你有没有尝试[这一个](https://smarterco.de/java-load-file-classpath-spring-boot/)或[这个答案](http://stackoverflow.com/questions/36407575/how-to -get-files-from-resources-folder-spring-framework)?? – AntJavaDev
'File file = new File(String.valueOf(this.getClass()。getResource(“classpath:/emailproperties/private.key.der”)));' – GingerHead
@GingerHead感谢您的重播。我已经尝试过,但错误为** EmailSmsService \类路径资源[private.key.der] java.io.FileNotFoundException ** –