java在实际应用_Java应用程序如何部署在“现实世界”中?
这取决于应用程序.有很多选项取决于用户如何使用您的应用程序.通常它被包装成罐子或专门的罐子(战争,耳朵).
理论上,您可以使用.class文件压缩原始目录结构,并提供为用户运行java命令的shell脚本/指令.我不建议这样做,因为它是一种不专业的,需要你为每个要运行程序的操作系统维护一个shell脚本.
Jar files用于打包库,但您也可以在其中显示一个清单文件,它说:“当有人双击/执行此操作时,运行此类”.该类可以启动GUI或作为响应参数等的无头任务.
你可以有applets,就像你说的.这些程序在用户的浏览器中运行.
您可以使用war file,这是一种打包Web应用程序的方法.您将其提供给Web服务器,它知道如何部署它,以便您可以访问网页. Web服务器/容器的示例是tomcat或jetty.
你可以有一个ear file,它可以包含其中的其他战争文件.这用于需要javaee功能的其他部分(ejbs,jms队列等)的应用程序.应用服务器的一个例子是jboss或glassfish.
还有java web start个应用程序.这些是通过访问网页可以运行的应用程序,但是它们会下载到您的计算机上并在用户的计算机上运行(而不是在服务器的后端,如在战争/耳朵中).
还有javafx.我不知道什么. By skimming the FAQ,它似乎是Java对Adobe’s Flex的答案.您可以使用xml配置配置UI组件.我不知道JavaFX应用程序使用什么格式,但它确实说:“在桌面或浏览器中部署”.
由于Sotirios Delimanolis在下面的评论中提到,您可以使用构建系统(如Ant或Maven)构建这些文件.您还可以使用java / javaee sdk附带的工具“手动”构建它们.例如,如果您安装了sdk,那么您的路径中应该有一个jar命令.以下是这些构建系统的一些细节:
> Maven
>高级(你告诉它要构建什么,不是如何构建它)
>不仅仅是构建系统.还有依赖管理等
>意见(它使用约定超过配置,每个配置文件生成1个工件等)
蚂蚁
>低级(你告诉它如何构建东西)
>灵活
>配置文件可以做任何你想要的,构建尽可能多的工件,你想要的
>容易学习
> SDK工具
>始终保持最新. EG:很少,maven / ant可能无法设置配置选项难以记住命令>非常低的水平>本身不可重复(EG:除非你构建一个脚本,你必须每次都自己键入jar命令)
java在实际应用_Java应用程序如何部署在“现实世界”中?相关推荐
- Java:现实世界中最流行的10个Java应用程序示例
Java 是 DevOps.AI.机器学习和微服务的第一大编程语言.今天,Java 广泛用于企业应用程序和构建动态数字产品.它也是增强和虚拟现实.大数据和持续集成的有用技术.Java 生态系统是使用先 ...
- 现实世界中哪些地方用到了Java?
现实世界中哪些地方用到了Java? java android应用 电子商务 编程语言 应用程序 操作系统 除了Minecraft这款游戏以外,你有没有见过用Java编写的游戏.桌面系统.办公软件 ...
- java端到端_Java应用程序性能监控:复杂分布式应用程序的端到端性能
java端到端 通过从您的应用程序学习企业APM产品,发现更快,更有效的性能监控. 参加AppDynamics APM导览! 在最复杂和分布式环境中端到端监视Java应用程序性能-专注于业务事务. 自 ...
- java 1000个线程_java,一个程序建立1000个线程,每一个线程加1到一个变量sum。
1.程序建立1000个线程,有可能造成系统创建大量线程而导致消耗完系统内存,还会增加创建和销毁线程上所花的时间以及系统资源的开销 2.在创建线程数多的情况下,可以考虑使用线程池 以下是Java自带的几 ...
- java怎么加定时器_JAVA WEB程序中添加定时器
JAVA WEB程序中添加定时器 //这是我的定时器类,用来定时执行某段任务: package com.my.time; import java.text.ParseException; import ...
- java数字计算结果_Java编写程序之输入一个数字实现该数字阶乘的计算
需求说明: 编写Java程序,输入一个数字,实现该数字阶乘的计算.一个数字的阶乘是所有小于及等于该数的正整数的积,自然数n的阶乘写作n! .例如,5的阶乘等于1*2*3*4*5,表示为5! = 120 ...
- java css js 合并_java Web程序使用wro4j合并、压缩js、css等静态资源
在Web项目中,js.css合并压缩,不仅有利于减少Http请求数量.减少宽带资源占用,还能有效的管理各种js.css的引入,使整个项目更加有序.而对于访问用户来说,其更大的好处是增加了页面的打开速度 ...
- java开发电脑软件_JAVA开发程序员,开发使用笔记本推荐?
同 java 路过. 买笔记本,我们可以从以下几点来选购参考. "硬参数"CPU 内存 硬盘 显卡 "软参数"屏幕 重量 散热 那依次来按照顺序来介绍下. &q ...
- java 进程不关闭_java运行程序关不了窗口
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 package office菜单; import java.awt.Frame; import java.awt.Menu; //菜单组件 import ...
最新文章
- oralce rollup 小计合计_总计与小计–WITH ROLLUP
- CPU芯片哪家强?电视处理器这么选就对了!
- python中list index out of range_Python知识精解:str split()方法
- 【算法精讲】分享一道很不错的算法题
- 手工编程是指利用计算机完成,西安交通大学17年3月课程考试《CAD CAM》作业考核试题...
- 在阿里工作5年了,斗胆谈谈我认为的高级开发到底应该是怎样的?
- socket编程持续交流java_socket编程的简单问题
- 2018年12月19日
- Dropbox 的崛起之路,创始人曾拒绝乔布斯天价收购
- 20.合并两个有序链表
- 3dmm人脸配准/重建:gold standard algorithm
- i310100f和i310105f有什么区别 i3 10100f和i3 10105f 选哪个好
- mysql504怎么办_php504错误怎么解决
- powerbi服务器性能分配,Power BI 嵌入式分析性能最佳做法
- 浅学C++(3)学习C语言(电话簿)
- 什么是带状线、微带线?参考平面与传输线那些事儿
- Python新手入门
- 毕业就在小公司躺了3年,面试大厂发现,发现不会分布式没人要…
- 傅里叶级数、傅里叶变换、短时傅里叶变换 公式
- Hadoop 入门总结
热门文章
- 到底什么成就了今天的人工智能?(上)
- Multi Task Learning在工业界如何更胜一筹
- 上万条数据撕开微博热搜的真相!
- Storm精华问答 | 为什么要用Storm?不用Spark?
- 有问有答 | 容器精华问答,如何玩转容器服务?
- c语言水仙花数(输入判断),用c语言判断一个数是否为水仙花数?
- python冒泡排序实验报告_python中的冒泡排序
- docker kibana:7.14.2
- Docker JFrog Artifactory 7.27.10 maven私服(IDEA 实战篇01) linux
- vue-cli-service不是内部或外部命令,也不是可运行的程序