Eclipse常见问题和解决方案for noob

本文档详细介绍了使用Eclipse进行Web项目开发时遇到的各种问题及其解决方案,包括部署项目的路径配置、解决中文文件上传乱码问题的方法、避免Tomcat启动时出现警告的方式以及如何使非Servlet文件的更改生效。

大体上可以分为这些问题:

部署(deploy)

撸码(code)

构建(build)

1.「deploy」Eclipse创建web项目并使用tomcat,空项目启动tomcat出warning:

提示信息为:

警告: [SetPropertiesRule]{Server/Service/Engine/Host/Context} Setting property 'source' to 'org.eclipse.jst.jee.server:DocShare' did not find a matching property.

解决方案:

这里DocShare是我的项目名。搜到的中文解决办法是,鼠标勾选Publish modual contexts to separat XML files:

194820_tFDO_869489.jpg

194821_lrld_869489.png


但是不管用!

stackoverflow上说了这个是warning是从tomcat6开始如果xml文件的dtd找不到就报warning。

那就不用解决了。


2.「code」javadoc

比如做文件上传功能时,使用了apache的commons-fileupload包,当然还要添加它依赖的commons-io包,然后从官网copy了sample代码运行,测试中文文件内容时乱码,而request和response等已经设定过编码了,所以google之。

发现String value=item.getString("UTF-8");这样一句代码,而官网给出的code没有utf-8的参数。

那么我怎么知道要添加这个utf-8的编码参数呢?javadoc。

问题是仅仅导入jar包是没有文档看到的,需要手动导入。

202508_mbmS_869489.png


这里如果是添加本地javadoc,比如commons-fileupload的这个,添加到apidoc路径就好了,只要这个路径中index.html和package-list两个文件基本上就正确了;然后记得把包的优先级上调,否则还是可能出不来:

095805_WtEk_869489.png


3. 「build」Eclipse创建的web项目,build path中添加jar包无效,先复制到WEB-INF/lib后再添加则有效

这个是Eclipse本身没做好,不像MyEclipse那么人性化。对策就是把jar包拷贝到lib路径,这用于编译。


4. 「deploy」Eclipse开发web项目,部署路径怎么搞?

(1)我用的是EclipseJee版本,另外安装了tomcat7,在eclipse中要新建server把自己装的这个tomcat配置好。

(2)默认Eclipse会把你的web项目部署到工作目录下

.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpwebapps\项目名路径

有时候觉得这个路径很难找到,幸运的是可以在eclipse中建立的tomcat server中配置它:

1.启动服务器,然后将服务器中的项目清空。
2.双击服务器会打开一个配置的文件,修改 Server Locations下为Use tomcat installation ...(原为 Use workspace metadata...), 再修改 Deploy path 为 webapps(原为 wtpwebapps),最后点关闭弹出提示是否保存 点yes
3.再把项目添加到服务器中,部署启动  这样就把项目发布到外面的tomcat文件下了

(参考:http://bbs.youkuaiyun.com/topics/390168868)

104814_djig_869489.png

105000_Ijcg_869489.png

比如我设定D:\workspace\java\tomcat-deploy目录专门用于Eclipse中的web项目本地测试的部署路径。

设定完毕,ctrl+s保存,然后重新运行你的web项目,项目就部署在你新指定的路径了!


5. web项目中非servlet文件的修改(比如模版文件修改)不起作用,要重启tomcat才生效,怎么办?

因为webapp工程publish了,也就是部署到了另一个路径。

解决办法就是不让它publish。怎么搞呢?还是图形界面,tomcat界面的ServerOption中勾选Server modules without publishing:

191535_ZgPH_869489.png

转载于:https://my.oschina.net/u/869489/blog/374573

### LoRA 技术的基础知识 LoRA(Low-Rank Adaptation)是一种用于高效微调大语言模型的技术,其核心目标是通过降低参数更新的秩来显著减少计算资源时间开销[^3]。这种方法允许开发者仅调整少量参数即可实现对大规模预训练模型的有效定制化。 #### LoRA 的基本概念 LoRA 基于低秩分解的思想,在微调过程中并不是直接修改原始模型的所有权重,而是引入两个小型矩阵 \( A \) \( B \),使得它们相乘的结果近似表示原模型中的某些权重变化。这种设计可以极大地减少需要优化的参数数量,从而提高效率并节省内存消耗。 以下是几个重要的基础知识要点: 1. **低秩分解** 在传统方法中,如果要微调一个具有数亿甚至数十亿参数的大规模神经网络,则通常意味着这些参数都需要被重新训练。然而,采用 LoRA 后,只需增加两组额外的小型可学习张量——即上述提到的 \( A \) \( B \)。这两个新增加的部分分别对应输入层到隐藏状态之间的映射关系以及从隐藏状态返回至输出端口的过程。 2. **适应性强** 尽管减少了实际参与梯度下降过程的数量级庞大的自由变量数目,但由于巧妙利用了线性代数理论里的奇异值分解(SVD)原理或者随机初始化技巧构建出来的替代品能够很好地捕捉住目标任务所需的关键特征信息,因此最终效果并不会受到太大影响。 3. **应用场景广泛** 不论是在自然语言处理领域内的文本分类、机器翻译任务上;还是计算机视觉方向的目标检测、图像分割等方面均能发挥出色表现。特别是当面对资源受限环境下的部署需求时(比如移动设备端应用开发场景下), 使用该策略无疑是一个明智的选择。 4. **实践操作简易** 对于初学者而言,可以通过一些公开可用的教学资料快速掌握这项技能。例如,“手把手教你训练LoRA:LoRA训练入门指南”提供了详尽的操作流程说明,并配有完整的视频演示帮助理解各个细节部分[^2]。此外还有专门针对特定框架版本如 SDXL 设计而成的相关课程可供参考学习[^1]。 ```python import torch from peft import get_peft_config, PeftModelForSequenceClassification # 初始化 PEFT 配置 (这里以 LoRA 为例) peft_config = get_peft_config( method="lora", r=8, # 秩大小设置为8 lora_alpha=16 # 控制缩放因子 ) model = SomePretrainedModel() # 替换为你使用的具体模型类名 peft_model = PeftModelForSequenceClassification(model, peft_config) # 开始正常训练... optimizer = torch.optim.AdamW(peft_model.parameters(), lr=5e-5) for epoch in range(num_epochs): for batch in dataloader: outputs = peft_model(**batch) loss = outputs.loss optimizer.zero_grad() loss.backward() optimizer.step() ``` 以上代码片段展示了如何基于 Hugging Face 提供的支持库 `PEFT` 来集成 LoRA 功能进入标准 PyTorch 训练循环之中。 --- ###
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值