You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@creadur.apache.org by "Tilman Hausherr (Jira)" <ji...@apache.org> on 2025/10/07 17:17:00 UTC
[jira] [Updated] (RAT-496) FileNotFoundException in Resources.getExampleResource() if project path has a space
[ https://issues.apache.org/jira/browse/RAT-496?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Tilman Hausherr updated RAT-496:
--------------------------------
Description:
I tried to build on my machine and got this:
java.io.FileNotFoundException: Source 'XXXXX\Eigene%20Dateien\XXXX\Java\creadur-rat\apache-rat-core\target\test-classes\examples\exampleData\Source.java' does not exist
at org.apache.commons.io.FileUtils.checkFileExists(FileUtils.java:317)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:855)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:888)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:790)
at org.apache.rat.document.FileDocumentTest.setUp(FileDocumentTest.java:50)
This can be fixed by changing the code in {{Resources.java}} like this:
{code:java}
public static File getExampleResource(String pResource) {
URL url = Resources.class.getResource("/examples/" + pResource);
Objects.requireNonNull(url, "/examples/" + pResource + " not found");
try
{
return Paths.get(url.toURI()).toFile();
}
catch (URISyntaxException ex)
{
throw new IllegalArgumentException(ex);
}
}
{code}
Using IllegalArgumentException because this is an unchecked exception. Alternatively we could throw URISyntaxException but then we'd have to change more files.
was:
I tried to build on my machine and got this:
java.io.FileNotFoundException: Source 'XXXXX\Eigene%20Dateien\XXXX\Java\creadur-rat\apache-rat-core\target\test-classes\examples\exampleData\Source.java' does not exist
at org.apache.commons.io.FileUtils.checkFileExists(FileUtils.java:317)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:855)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:888)
at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:790)
at org.apache.rat.document.FileDocumentTest.setUp(FileDocumentTest.java:50)
This can be fixed by changing the code like this:
{code:java}
public static File getExampleResource(String pResource) {
URL url = Resources.class.getResource("/examples/" + pResource);
Objects.requireNonNull(url, "/examples/" + pResource + " not found");
try
{
return Paths.get(url.toURI()).toFile();
}
catch (URISyntaxException ex)
{
throw new IllegalArgumentException(ex);
}
}
{code}
Using IllegalArgumentException because this is an unchecked exception. Alternatively we could throw URISyntaxException but then we'd have to change more files.
> FileNotFoundException in Resources.getExampleResource() if project path has a space
> -----------------------------------------------------------------------------------
>
> Key: RAT-496
> URL: https://issues.apache.org/jira/browse/RAT-496
> Project: Apache Rat
> Issue Type: Bug
> Components: core engine
> Affects Versions: 0.17
> Reporter: Tilman Hausherr
> Priority: Minor
>
> I tried to build on my machine and got this:
> java.io.FileNotFoundException: Source 'XXXXX\Eigene%20Dateien\XXXX\Java\creadur-rat\apache-rat-core\target\test-classes\examples\exampleData\Source.java' does not exist
> at org.apache.commons.io.FileUtils.checkFileExists(FileUtils.java:317)
> at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:855)
> at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:888)
> at org.apache.commons.io.FileUtils.copyFile(FileUtils.java:790)
> at org.apache.rat.document.FileDocumentTest.setUp(FileDocumentTest.java:50)
> This can be fixed by changing the code in {{Resources.java}} like this:
> {code:java}
> public static File getExampleResource(String pResource) {
> URL url = Resources.class.getResource("/examples/" + pResource);
> Objects.requireNonNull(url, "/examples/" + pResource + " not found");
> try
> {
> return Paths.get(url.toURI()).toFile();
> }
> catch (URISyntaxException ex)
> {
> throw new IllegalArgumentException(ex);
> }
> }
> {code}
> Using IllegalArgumentException because this is an unchecked exception. Alternatively we could throw URISyntaxException but then we'd have to change more files.
--
This message was sent by Atlassian Jira
(v8.20.10#820010)