我想在dropwizard上运行一个html文件。
这些是我想要运行的脚本:
<script src='http://dhtmlx.com/docs/products/dhtmlxScheduler/codebase/dhtmlxscheduler.js'></script>
<link rel='stylesheet' type='text/css' href='http://dhtmlx.com/docs/products/dhtmlxScheduler/codebase/dhtmlxscheduler.css'>
<link rel='stylesheet' type='text/css' href='style.css'>
<script src='https://code.jquery.com/jquery-3.1.0.min.js'></script>
<script src='x.js'></script>
<script src='y.js'></script>
在我的初始化方法中:
我有这个:
bootstrap.addBundle(new AssetsBundle("/assets", "/", "index.html"));
bootstrap.addBundle(new AssetsBundle("/assets", "/", "x.js"));
bootstrap.addBundle(new AssetsBundle("/assets", "/", "y.js"));
bootstrap.addBundle(new AssetsBundle("/assets", "/", "style.css"));
我得到一个404错误,当我运行dropwizard。然而,我已经尝试运行一个简单的html文件没有javascript,这是能够运行良好。你能在dropwizard之外使用java脚本吗?
我已经成功地引用了Dropwizard中的静态资产。我的initialize方法只是创建了默认的AssetsBundle:
bootstrap.addBundle(new AssetsBundle());
这意味着静态资产应该在src/main/resources/assets
中,并且应该使用/assets/<file name>
<script src="/assets/abc.js"></script>
正如你所做的那样,用参数调用AssetsBundle应该没问题,但是你应该只需要一个addBundle调用。)留下第一个,丢掉其余的。最后一个参数是默认的索引文件名,在您的情况下没有作用,因为您的路径中有显式的文件名。)在HTML模板中,尝试修改路径,使它们是绝对的,例如:
<script src="/x.js"></script>