java - 试图编译一个新的 servlet 来做一个休息服务
问题描述
我是构建用于休息和这些技术版本的 servlet 的菜鸟......由于 servlet 必须运行的位置,我们在 Java 1.4.2_08 和 Tomcat 版本 5.5.17 上创建了一个 Hello World 示例和我正在尝试编译它。它使用 Jersey 库(JAX-RS 2.1)并得到以下错误:“javac:无源文件”
这是我正在使用的 cmd: C:\j2sdk1.4.2_08\bin\javac -sourcepath C:_restful\WEB-INF\classes\com\dmphealth\ws\helloworldresource.java -classpath "C:_restful\WEB-INF \lib\" -d C:_restful\WEB-INF\classes 我试过在 \ws\ 之后只使用一个 \ 并且在 \ws\ 之后也尝试过 *.java 和 * 他们都有相同的结果......任何想法将不胜感激。戴夫
为了澄清代码,上面用斜体表示。C:_restful 是库和代码所在路径的第一部分。java 1.4 的原因是因为 servlet 将进入的系统是在那个平台上。此时为一个额外的 servlet 升级平台成本很高。
解决方案
你的目录结构很奇怪。最好不要将任何源存储在类目录中。
Tomcat 类目录通常包含已编译的类(.class 文件)而不是源代码(.java 文件)。源文件应该在开发存储库中,编译它们实际上会创建 .class 文件并将它们复制到 WEB-INF\classes
命令应该是这样的:
C:\j2sdk1.4.2_08\bin\javac -sourcepath C:\path_to_the_source_file_dir\*.java -classpath C:\_restful\WEB-INF\lib\* -d C:\_restful\WEB-INF\classes
确保 -sourcepath 实际上包含任何要编译的 .java 文件!
你这样做的方式并不容易。您最好使用 IDE,创建一个 lib 类路径,然后从那里编译您的代码并将编译输出重定向到您的目标类目录。
推荐阅读
- android - 无法从 Windows 2016 服务器获得对特定图像文件的任何响应
- wordpress - 排除 Woocommerce 中的类别
- python-3.x - 我需要为提到的页面中的每个职位抓取职位描述文本
- c++ - 如何从输入的文本文件中按姓氏字母顺序对图表进行排序?
- node.js - 如何在对话流中获取先前的意图
- google-apps-script - 更新其他工作表时更新谷歌“主”电子表格
- jpa - 使用 micronaut-data-hibernate-jpa 库连接到 jpa 时出错
- reactjs - 使用 Firebase 在两个应用之间共享位置
- c# - 使用 Master.Master 上的 javascript 在任何 aspx 页面上从 Master.cs 调用方法
- c++ - 如何在安装“opencv4nodejs”模块期间修复错误