上一篇文章 .net基础学java系列(三)徘徊反思

本章节没啥营养,请绕路!

看视频,不实操,对于上了年龄的人来说,是记不住的!我已经看了几遍IDEA的教学视频:

https://edu.51cto.com/course/15850.html,此视频分如下13节!

1-1 Idea介绍(刷过去,不看了)

1-2 Idea安装(刷过去,不看了,官网介绍的使用ToolBox安装,更好!)

1-3 idea创建普通Java工程(好吧,这里就跟.net的控制台应用程序一样嘛!)

1-4 idea设置样式(一个一个设置太麻烦啦)

1-5 idea主题安装(我下的是Visual Studio的主题)

1-6 工程选择与隐藏.idea文件夹(跟Visual Studio还是有点点区别的!)

1-7 idea快捷键设置(选择的是Visual Studio,但是还是各种不习惯,特别是格式化的快捷键,所以)

1-8 lombok插件安装

1-9 tomcat服务器配置

1-10 tomcat关联jar包运行项目

1-11 Jrebel热部署

1-12 idea导入Eclipse项目

1-13 设置导入工程编码

其实,第一次看到1-6、1-7就来了个小插曲!Java同事说,他用了winsw打包jar包,做成了一个windows服务,但是在一台Windows Server 2012的电脑,windows服务没跑起来!让我给他做一个启动jar包的windows服务!)

假如是你,你是继续往下看视频,还是帮他做完windows服务再看?

我的选择:继续囫囵吞枣的看完下面的视频,然后迅速回头帮他弄windows服务!然而我走错了路!

我跟同事说,我还不熟悉IDEA,能否把他的jar包给我?然后他没给我,他是这么做的:

1、当场在我电脑下载了一个Springboot的模板(难道一个控制台程序不行?)

2、解决各种包引用(真是作!)

3、写了一个死循环输出当前时间

4、打包成jar包

在这之后,我就开始码C#的代码了!控制台程序+TopShelf+(C#+CMD+CMD指令【java –jar XXX.jar】)。最终我发现我的程序调试没有问题,但是装成服务后跑不起来,一手动点启动就报错。

再反思:接到任务,为什么不问清楚需求、不做技术预研、不问清楚运行环境就开始码代码了。

反思后:

1、怎么用IDEA打包?

https://www.jetbrains.com/help/idea/packaging-a-module-into-a-jar-file.html

官网确实很鄙视菜鸟,解说得不够明白!

还是网上找找说明,自己实操下!

File –> Project Structure

Artifacts –> JAR –> From modules with dependencies

选择Main Class

点击OK

最后Build –> Build Artifacts

2、为什么要再造轮子?

于是乎,我从github上,下载了winsw的源码 https://github.com/kohsuke/winsw,winsw也C#代码写的,它调用cmd,传入cmd指令,执行jar包!一个成型的项目,必然考虑到了多种场景,而我从零开始码代码,必然存在更多的问题。

我理解的windows服务启动失败!一般都是因为异常引发的!

比如基于TopShelf的windows服务!那么,windows服务中,使用C#调用cmd,启动程序或者运行Java,会有哪些可能的原因导致启动失败的?请有经验的园友帮忙总结总结!

最后,入门的东西确实有点枯燥,还是好高骛远点,继续阅读《大型网站技术架构:核心原理与案例分析》

最新文章

  1. jquery.each()
  2. PHP中的运算符---算术运算符、逻辑运算符、赋值运算符、比较运算符
  3. WCF服务显示的是服务器名称而不是IP地址...
  4. 和我一起学python,控制语句 (life is short ,we need python)
  5. SQL索引学习-聚集索引
  6. Spring中WebApplicationContext的研究
  7. jquery扩展 $.fn
  8. Windows内存小结(有好多图,比较清楚)
  9. struts2 action重定向
  10. [c++语法]类
  11. Go Runtime hashmap实现
  12. 使用ichartjs生成图表
  13. 一起写框架-Ioc内核容器的实现-基础功能-ComponentScan支持组件注解限制(七)
  14. c++(快速排序)
  15. poj3270 && poj 1026(置换问题)
  16. 在mysql数据库中创建oracle scott用户的四个表及插入初始化数据
  17. Android中代码运行指定的Apk
  18. 客户端无法加入域,报错:“无法与域‘xxx.com’的Active Directory域控制器(AD DC)链接” 请确保键入的域名正确
  19. Python自学:第三章 使用函数sort( )对列表进行临时排序
  20. c#_生成图片式验证码

热门文章

  1. 转载:原来JavaScript的闭包是这么回事!
  2. React踩坑记
  3. Educational Codeforces Round 63 (Rated for Div. 2)
  4. Python与微信——itchat包
  5. Exp3 免杀原理与实践
  6. Jenkins Sonar
  7. Java原子类中CAS的底层实现
  8. metasploit与Cobaltstrike互相派生shell
  9. nodeJS模块寻址规则
  10. 在Ubuntu下进行XMR Monero(门罗币)挖矿的超详细图文教程