• 由于高版本的Maven-Eclipse插件,IDE在项目编译的时候会默认将src/main/resources下的静态资源排除(Exluded),导致程序执行的时候,找不到静态资源,报告错误如下: java.io.FileNotFoundException: class path ...

    具体区别表现可见:SpringBoot项目打成jar与war的区别

    为什么src/main/resources下的静态资源要被编译进入项目名\target\classes才能被外部访问,而src/main/webapp下的静态资源,无需编译到项目名\target\classes可以直接被访问到??

    • src/main/resources:放代码:
    /**
    	 * Create a new DefaultResourceLoader.
    	 * <p>ClassLoader access will happen using the thread context class loader
    	 * at the time of this ResourceLoader's initialization.
    	 * @see java.lang.Thread#getContextClassLoader()
    	 */
    	public DefaultResourceLoader() {
    		this.classLoader = ClassUtils.getDefaultClassLoader();
    	}
    

    这段代码,是Spring获得自己的 默认资源加载器 的过程,我们还知道Spring提供了ResourceHttpRequestHandler来配置src/main/resources(classpath)下指定访问目录,而DefaultResourceLoader(默认的资源加载器)本质上就是DefaultClassLoader(默认的类加载器),而类加载器主要是针对**.class文件的路径,所以此时我们可以理解:为什么src/main/resources(classpath)的静态资源也需要编译到classes目录下?

    • src/main/webapp:
      对于webapp我们似乎更容易理解,它主要是通过servlet containerContextPath来确定资源在文件系统中的位置,然后使用如下API从文件系统中获取对应资源
      这里写图片描述
    展开全文
  • MAVEN配置文件生成到src/main/webapp/WEB-INF/classes目录下面

    1.pom.xml中配置:

    <build>
    <finalName>项目名称</finalName>
    <plugins>
    <!-- 更改maven默认的打包目录 -->
    <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-war-plugin</artifactId>
    <version>2.6</version>
    <configuration>
    <webappDirectory>${basedir}/src/main/webapp</webappDirectory>
    <warSourceDirectory>${basedir}/src/main/webapp</warSourceDirectory>
    <!-- <webResources> <resource> this is relative to the pom.xml directory 
    <directory>WebContent</directory> </resource> </webResources> -->
    </configuration>
    </plugin>
    </plugins>
    </build>

    2.项目右键-“Build path"-"Configure Build Path"


    配置输出目录为src/main/webapp/WEB-INF/classes

    注意其中:

    src/main/java 和src/main/resources中的Excluded 若为**,则选中,点击右边的”Remove“按钮即可。




    展开全文
  • Web application not found src/main/webapp 当时感觉应该是什么没有设置好。所以就直接把这个报错内容放到google上搜索了一下,然后在stackoverflow中按照如下的文章设置,果真跑起来了: ...

    今天在Intellij Idea中编译项目的时候,运行起来一直会报出如下的错误:

    Web application not found src/main/webapp

     

    当时感觉应该是什么没有设置好。所以就直接把这个报错内容放到google上搜索了一下,然后在stackoverflow中按照如下的文章设置,果真跑起来了:

    http://stackoverflow.com/questions/22542968/intellij-idea-multi-project-wicket-app-does-not-find-webapp

    记录一下,具体解决方式如下:

    Go to   "Run-- edit Configuration" and set "Working directory" to $MODULE_DIR$

     

    ps:Working directory 之前  D:\ideaWorkplace\xxx

    展开全文
  • 如果没有显示src/main/java和src/test/java文件夹:  方法一: 修改一些配置  1.eclipse-&gt;window-&gt;preferences-&gt;java-&gt;compiler-&gt;选择本地默认的jdk版本  2.eclipse-&...

    如果没有显示src/main/java和src/test/java文件夹:

              方法一:  修改一些配置

              1.eclipse->window->preferences->java->compiler->选择本地默认的jdk版本

              2.eclipse->window->preferences->java->intstalledJREs->修改本机jdk

              3.选中项目右键——>build path ->configure build path ->Libraries ->JRE System Library ->点击edit -> 选择alternate jre ->选择jdk

              4.点击finish ->点击OK -> 自动出现src/main/java和src/test/java文件夹

                  方法二:  不用修改配置:

             1.本来存在,只是missing而已,看图:

          2.选中src/main/java并且点击edit,如图所示:

    3.复制 Floder Name,点击next进入inclusion和exclusion patterns

    4.点击add按钮,把刚刚复制的拷贝进去,然后一路确定或者finish就可以自动把src/main/java和src/test/java都添加进去了

     

    如果没有显示src/main/webapp文件夹:

          同上面方法一承接第三步:

          3.选中项目右键——>build path ->configure build path -> 选择Source -> Add Folder -> 勾选webapp -> OK

        4.点击确定后,自动出现src/main/webapp文件夹

    展开全文
  • 改配置文件, 打开.setting 文件夹下的 org.eclipse.wst.common.component文件 , 用记事本打开, ... 找到红色标识的那句话,将蓝色标识的文件夹目录改为你的webRoot 目录名 , 即可。...[b] [color=red]/WebCont....
    改配置文件,
    打开.setting 文件夹下的 org.eclipse.wst.common.component文件 ,
    用记事本打开,
    <wb-module deploy-name="AMS">
    <wb-resource deploy-path="/" source-path="[color=red]/WebContent[/color]"/>
    <wb-resource deploy-path="/WEB-INF/classes" source-path[color=red]="/src[/color]"/>
    <property name="context-root" value="web"/>
    <property name="java-output-path" value="/web/target/classes"/>
    </wb-module>
    找到红色标识的那句话,将蓝色标识的文件夹目录改为你的webRoot 目录名 , 即可。如果没有红色标识这一行,就自行加上去即可。

    [b] [color=red]/WebContent 改成 /src/main/webapp[/color][/b]

    同理

    /src 改成 /src/main/java
    展开全文
  • Git -c diff.mnemonicprefix=false -c core.quotepath=false checkout – antzb-web/src/main/webapp/js/ny-details.js  error: unable to unlink old ‘antzb-web/src/main/webapp/js/ny-details.js’: Invalid ...
  • 1.在菜单栏找到RUN,并打开Run/Debug Configuration 2.找到Working directory,并设置为 $ MODULE_WORKING_DIR $ 3.设置成功后重新启动即可
  • 点开“项目结构”,点击“Facets”,然后展开web,点击自己的web项目,点击右侧加号添加web.xml文件 此时编辑你想将web.xml文件放在的目录位置,并选择版本即可 ...
  • 我在pom里是这样配置的: .../src/main/webapp/WEB-INF/classes src/main/resources * 在红色区域里,一开始是这样的:excluded:*.*,这样屏蔽所有文件,只有改成现在的样子才能自动生成。
  • 解决方案: Idea中工具栏 Run→ Edit Configuration 设置 Working directory为:$MODULE_DIR$ 参考地址:https://blog.csdn.net/cucmber/article/details/88870031
  • dependency:copy-dependencies -DoutputDirectory=main\webapp\WEB-INF\lib -DincludeScope=compile
  • 解决myeclipse部署maven时,src/main/resources里面配置文件加载不到webapp下classes路径下的问题。
  • 仅记录学习经验,以免下次再次出现这个问题不知道如何解决。 步骤一: 项目右键选择Properties->Project Facets->去掉Dynamic Web Module前面的对勾->... 步骤二: 项目右键选择Properties->...
  • IDEA启动项目时编译不通过,报Error:java:无效的标记:……\src\main\webapp\WEB-INF\lib &lt;!-- Compiler 插件, 设定JDK版本 --&gt; &lt;plugin&gt; &lt;groupId&gt;org.apache.maven....
  • 成功启动Tomcat的log信息,可以发现Spring成功初始化了。src/main/webapp加入到部署中
  • java.io.FileNotFoundException: .\xiangmu\src\main\webapp\upload…jpg (系统找不到指定的路径。) File file=new File(path); 执行创建多级目录是报的错, 创建多级目录 file.mkdirs(); 创建单级目录 file.mkdir...
  • 解决myeclipse部署maven时,src/main/resources里面配置文件加载不到webapp下classes路径下的问题。 有时候是src/main/resources下面的,有时候是src/main/Java下面的。 把没有编译的文件,先点击:Excluded,然后...
1 2 3 4 5 ... 20
收藏数 35,376
精华内容 14,150
热门标签
关键字:

main src webapp