上一篇文章 .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实操的更多相关文章

  1. .net基础学java系列(三)徘徊反思

    .net基础学java系列(三)徘徊反思 上一篇文章:.net基础学java系列(二)IDE 之 插件 这两天晚上看完了IDEA的教学视频:https://edu.51cto.com/course/1 ...

  2. .net基础学java系列(二)IDE 之 插件

    上一篇文章.net基础学java系列(二)IDE "扎实的基础"+"宽广的视野",基本可以帮我们摆脱码畜.码奴.码农的命运! IT领袖:IT大哥:IT精英:IT ...

  3. .net基础学java系列(二)IDE

    上一篇文章.net基础学java系列(一)视野 废话: "视野"这篇文章,管理员说它比较空洞!也许初学者看不懂表格中的大部分内容!多年的neter估计也有很多不知道的! 有.net ...

  4. 零基础学Java第四节(字符串相关类)

    本篇文章是<零基础学Java>专栏的第四篇文章,文章采用通俗易懂的文字.图示及代码实战,从零基础开始带大家走上高薪之路! String 本文章首发于公众号[编程攻略] 在Java中,我们经 ...

  5. .net基础学java系列(六)Java基础

    一.废话 .net学java为何一直没入坑?其实大家都知道,语法很相似,就是使用的习惯不同 稍微的语法差异 结构体系不同 IDE不同 类库集不同 各种框架不同 对于我来说,我一直被第三道坎拦住了,所以 ...

  6. .net基础学java系列(一)视野

    本文目的在于扩展你我视野,求各位大神帮忙补充下表格中的内容,特别是Java的相关内容. 下面的文字纯是为了凑足150个字. 本人作为一名普通的.net程序员,也快混了十年了.在.net方面的知识面较广 ...

  7. 辛巴学院-Unity-剑英陪你零基础学c#系列(四)函数和封装

    辛巴学院:正大光明的不务正业. 国庆长假结束了,我的心情是这样的: 你总是起不早,起不早独自一个人沉睡到天亮你无怨无悔的梦着那副本我知道你根本就不想上班你总是起不早,起不早放假总是短暂,上班太难请个病 ...

  8. .net基础学java系列(八)SpringBoot

    嘟嘟独立博客 Spring-Boot干货系列 http://tengj.top/categories/Spring-Boot干货系列/ 龙码精神 Java Spring Boot VS .NetCor ...

  9. .net基础学java系列(五)慢性自杀 之 沉沦在IDE中

    最近在慢学习IDEA,总是喜欢与Visual Studio! 其实,对于Visual Studio,它的官方(https://docs.microsoft.com/zh-cn/visualstudio ...

随机推荐

  1. [SMB share]Create SMB share under powershell / poweshell下创建本机的SMB共享

    New-SmbShare -Name share-name -Path C:\share -FolderEnumerationMode AccessBased -CachingMode Documen ...

  2. python第十二天, 三元表达式, 函数对象,名称空间与作用域,函数的嵌套定义

    复习 1. 字符串的比较: 2. 函数的参数:形参与实参 3. 实参的分类:位置实参与关键字实参 4. 形参分类: 1.无值位置形参 2.有值位置形参 3.可变长位置形参 4.有无值关键字形参 5.可 ...

  3. Linux安装Oracle JDK替换OpenJDK详解

    转自http://www.lsychina.com/howto_install_oracle-jdk_replace_openjdk_on_linux.html 众所周知,由于Oracle公司的JDK ...

  4. C# activex开发中 axwebbrowser控件及 IE浏览器设置

    <object type='application/x-vlc-plugin' id='vlc' events='True' codebase='../cab/axvlc.cab' classi ...

  5. Apache Hadoop 2.9.2 的YARN High Available 模式部署

    Apache Hadoop 2.9.2 的YARN High Available 模式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.环境准备 1>.官方文档(htt ...

  6. STM32的内存管理

    ref:https://www.cnblogs.com/leo0621/p/9977932.html 这里针对STM32F407芯片+1M外部内存的内存管理!(全篇是个人愚见,如果错误,请不吝指出!) ...

  7. 为Nexus配置阿里云代理仓库【转】

    Nexus默认远程仓库为https://repo1.maven.org/maven2/ 慢死,还常连不上. 可以添加阿里云代理仓库 URL:http://maven.aliyun.com/nexus/ ...

  8. Node的express配置使用ejs模板

    注册ejs模板为html页.以.ejs为后缀的模板页,现在的后缀名可以是.html app.engine('.html', require('ejs').__express); 设置视图模板的默认后缀 ...

  9. Redis的集群搭建

    一.集群的搭建 1.准备工作 (1)安装ruby环境 redis集群管理工具redis-trib.rb依赖ruby环境,首先需要安装ruby环境: yum -y install ruby yum -y ...

  10. C++与蓝图互调

    Kismet库 蓝图方法cpp使用 例:打LOG:Print String 蓝图节点的鼠标tips:Target is Kismet System Library #include "Run ...