.net基础学java系列(四)Console实操
上一篇文章 .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,会有哪些可能的原因导致启动失败的?请有经验的园友帮忙总结总结!
最后,入门的东西确实有点枯燥,还是好高骛远点,继续阅读《大型网站技术架构:核心原理与案例分析》
.net基础学java系列(四)Console实操的更多相关文章
- .net基础学java系列(三)徘徊反思
.net基础学java系列(三)徘徊反思 上一篇文章:.net基础学java系列(二)IDE 之 插件 这两天晚上看完了IDEA的教学视频:https://edu.51cto.com/course/1 ...
- .net基础学java系列(二)IDE 之 插件
上一篇文章.net基础学java系列(二)IDE "扎实的基础"+"宽广的视野",基本可以帮我们摆脱码畜.码奴.码农的命运! IT领袖:IT大哥:IT精英:IT ...
- .net基础学java系列(二)IDE
上一篇文章.net基础学java系列(一)视野 废话: "视野"这篇文章,管理员说它比较空洞!也许初学者看不懂表格中的大部分内容!多年的neter估计也有很多不知道的! 有.net ...
- 零基础学Java第四节(字符串相关类)
本篇文章是<零基础学Java>专栏的第四篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! String 本文章首发于公众号[编程攻略] 在Java中,我们经 ...
- .net基础学java系列(六)Java基础
一.废话 .net学java为何一直没入坑?其实大家都知道,语法很相似,就是使用的习惯不同 稍微的语法差异 结构体系不同 IDE不同 类库集不同 各种框架不同 对于我来说,我一直被第三道坎拦住了,所以 ...
- .net基础学java系列(一)视野
本文目的在于扩展你我视野,求各位大神帮忙补充下表格中的内容,特别是Java的相关内容. 下面的文字纯是为了凑足150个字. 本人作为一名普通的.net程序员,也快混了十年了.在.net方面的知识面较广 ...
- 辛巴学院-Unity-剑英陪你零基础学c#系列(四)函数和封装
辛巴学院:正大光明的不务正业. 国庆长假结束了,我的心情是这样的: 你总是起不早,起不早独自一个人沉睡到天亮你无怨无悔的梦着那副本我知道你根本就不想上班你总是起不早,起不早放假总是短暂,上班太难请个病 ...
- .net基础学java系列(八)SpringBoot
嘟嘟独立博客 Spring-Boot干货系列 http://tengj.top/categories/Spring-Boot干货系列/ 龙码精神 Java Spring Boot VS .NetCor ...
- .net基础学java系列(五)慢性自杀 之 沉沦在IDE中
最近在慢学习IDEA,总是喜欢与Visual Studio! 其实,对于Visual Studio,它的官方(https://docs.microsoft.com/zh-cn/visualstudio ...
随机推荐
- python并发编程之多进程基础知识点
1.操作系统 位于硬件与应用软件之间,本质也是一种软件,由系统内核和系统接口组成 和进程之间的关系是: 进程只能由操作系统创建 和普通软件区别: 操作系统是真正的控制硬件 应用程序实际在调用操作系统提 ...
- 第九周博客作业<西北师范大学|李晓婷>
1.助教博客链接:https://home.cnblogs.com/u/lxt-/ 2.作业要求博客链接:https://www.cnblogs.com/nwnu-daizh/p/10726884.h ...
- mac-redis安装与使用
安装: brew install redis --------------- 使用: 启动redis-server: sudo redis-server 连接:./redis-cli -h 127.0 ...
- 06--STL序列容器(priority_queue)
一:优先队列priority_queue简介 同队列,不支持迭代 (一)和队列相比 同: 优先队列容器与队列一样,只能从队尾插入元素,从队首删除元素. 异: 但是它有一个特性,就是队列中最大的元素总是 ...
- python之路(12)网络编程
前言 基于网络通信(AF_INET)的socket(套接字)实现了TCP/UDP协议 目录 基于TCP协议的socket 基于UDP协议的socket TCP协议下粘包现象及处理 使用socketse ...
- c++对象的存储空间
1. 非静态成员 2. 静态成员变量 静态成员变量不占对象的内存空间 3. 成员函数 成员函数不占内存空间 4. 析构函数 5. 类中有虚析构函数 6. 继承空类和多重继承空类存储空间的计算 7. t ...
- VS注释快捷键
注释: 先CTRL+K,然后CTRL+C 取消注释: 先CTRL+K,然后CTRL+U 代码自动对齐:1, ctrl+a 2, ctrl+k 3, ctrl+f
- Exp3 免杀原理与实践 20164314 郭浏聿
一.实践内容 1.正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳工具,使用shellcode编程 2.通过组合应用各种技术实现恶意代码免杀(0.5分) ...
- robotframework环境安装
1.安装 robotframework 执行命令 pip install robotframework 2.安装seleniumlibrary 执行命令 pip install --upgrade r ...
- python面试题一个字符串是否由重复的子字符串组成
一,给定一个非空的字符串,判断它是否可以由它的一个子串重复多次构成.给定的字符串只含有小写英文字母,并且长度不超过10000. 输入: "abab" 输出: True 解释: 可由 ...