Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Jasmine Maven Plugin including my scripts using file protocol

I'm trying to add javascript unit testing to our project and found out about the Jasmine Maven Plugin. I followed the directions and ended up with this in my pom.xml:

<plugin>
    <groupId>com.github.searls</groupId>
    <artifactId>jasmine-maven-plugin</artifactId>
    <version>1.2.0.0</version>
    <extensions>true</extensions>
    <executions>
        <execution>
            <goals>
                <goal>test</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <jsSrcDir>${project.basedir}/src/main/webapp/resources/js</jsSrcDir>
        <jsTestSrcDir>${project.basedir}/src/test/javascript</jsTestSrcDir>
    </configuration>
</plugin>

I run mvn jasmine:bdd and get the expected output. I then go to http://localhost:8234 and all I get is a blank screen. I look in the console and see this for each of my js files:

Not allowed to load local resource: file:///absolute/path/to/the/js/src/main/webapp/resources/js/myJS.js

The HTML for the page is including my scripts like this:

<script type="text/javascript" src="file:/absolute/path/to/the/js/src/main/webapp/resources/js/myJS.js"></script>

So my question is, why is the plugin using the file protocol to inculde the js? Is this how it usually works? If so, how do I get my browser to allow the local resource? Is there any way to prevent it from doing this?

Just in case it matters, I tried this with both Firefox and Chrome, and I am using OS X.

like image 483
dnc253 Avatar asked Nov 03 '22 18:11

dnc253


1 Answers

I ran into this issue recently and the problem was that my project was in a directory that had spaces in it.

This was on windows but it might be the same on OSX so it's worth a try.

So for instance my project was in a directory like this:

C:\directory with spaces\myproject

Changing it to the following fixed the jasmine:bdd command:

C:\directorywithoutspaces\myproject

Good luck!

like image 66
Kyle Avatar answered Nov 09 '22 12:11

Kyle