Linux运行c#_在控制台运行一个java程序

Linux运行c#_在控制台运行一个java程序1、创建控制台程序如上图所示,选择语言为linux,我用的VS2019,.Net5.0,一直点下一步,创建。2、创建TCP服务端程序usingLinuxTcpApp.TcpServer;usingSystem;usingSystem.Net;namespaceLinuxTcpApp{classProgram{privatestaticAsyncTcpServertcpServer;staticvoidMain(s

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

1、创建控制台程序

在这里插入图片描述
在这里插入图片描述

如上图所示,选择linux开发平台,我用的VS2019,.Net5.0,一直点下一步,创建。

2、创建TCP服务端程序

using LinuxTcpApp.TcpServer;
using System;
using System.Net;

namespace LinuxTcpApp
{ 
   
    class Program
    { 
   
        private static AsyncTcpServer tcpServer;
        static void Main(string[] args)
        { 
   
            Console.WriteLine("程序开始运行");
            IPAddress ipAddress;
            IPAddress.TryParse("0.0.0.0", out ipAddress);
            tcpServer = new AsyncTcpServer(ipAddress, 9888);
            tcpServer.ClientConnected += TcpServer_ClientConnected;
            tcpServer.ClientDisconnected += TcpServer_ClientDisconnected;
            tcpServer.PlaintextReceived += TcpServer_PlaintextReceived;
            tcpServer.Start();
            while (true)
            { 
   
                Thread.Sleep(1);
            }
        }
        
        private static void TcpServer_PlaintextReceived(object sender, TcpDatagramReceivedEventArgs<string> e)
        { 
   
            Console.WriteLine(e.Datagram);
            tcpServer.SendAll(e.Datagram);
        }

        private static void TcpServer_ClientDisconnected(object sender, TcpClientDisconnectedEventArgs e)
        { 
   
            Console.WriteLine("连接断开"+ e.TcpClient.Client.LocalEndPoint.ToString());
        }

        private static void TcpServer_ClientConnected(object sender, TcpClientConnectedEventArgs e)
        { 
   
            Console.WriteLine("连接成功"+ e.TcpClient.Client.LocalEndPoint.ToString());
        }
    }
}

需要源码的后台私聊

3、利用vs发布程序

我这里手动发布至文件夹,然后压缩上传到服务器
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

把文件放到了桌面,打开cmd利用SCP命令上传至服务器,有上传工具可以用工具上传,可以百度下载。

在这里插入图片描述

4、Ubuntu服务器安装.Net环境

安装命令如下:

sudo apt-get install dotnet-sdk-5.0

如果apt下载不了,请更新

wget https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb -O packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
sudo apt-get update

5、解压运行tcp服务端程序

连接服务器工具我用的是Git Bash,使用ssh命令,登录解压命令用rar x linux-x64
在这里插入图片描述
在这里插入图片描述
进入解压后的文件夹查看tcp使用情况,使用命令netstat -apt
在这里插入图片描述
由上图所知,没有9888这个端口的服务启动过。
之后用dotnet 命令运行LinuxTcpApp.dll,即可启动程序
在这里插入图片描述
可以用调试助手,进行通讯测试程序是否有问题
在这里插入图片描述

6、服务器后台运行程序

使用nohup命令,让程序在后台运行。完整命令如下,参数可以百度了解。
在这里插入图片描述
再次查看,tcp使用情况,如下图所示:
在这里插入图片描述

至此利用C# 语言跨平台Tcp服务器程序开发部署完毕,当有大型程序任务开发时,此方法不推荐使用,最好使用容器,保证程序的运行的稳定性。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/197332.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 【新版】掩日免杀windows Defender「建议收藏」

    【新版】掩日免杀windows Defender「建议收藏」掩日免杀是一个非常优秀的项目,目前在`4月19`号已经更新,更新的变动较大,支持的种类更多,在这里再试试现在的效果如何:

    2022年8月20日
    17
  • C语言中输入输出所有格式控制符

    C语言中输入输出所有格式控制符title:C语言中输入输出所有格式控制符date:2020-01-1617:02:06description:C语言输入输出的所有格式控制详解C语言中输入输出所有格式控制符 最近在重温C语言,发现C语言的输入输出函数scanf和printf函数在控制输入输出时有许多控制符来控制输入输出数据的格式。于是就打算来整理一下。参考百度百科词条 scanf()是C语言中的一个输入…

    2022年7月24日
    21
  • 一个java文件如何放两个public class 类「建议收藏」

    一个java文件如何放两个public class 类「建议收藏」publicclassMain{publicstaticvoidmain(String[]args){System.out.println(“HelloWorld!”);}publicclassTest1{}//正确}publicclassTest2{}//错误classTest3{}//正确////

    2022年5月22日
    55
  • redisson和jedis区别_java调用redis集群

    redisson和jedis区别_java调用redis集群Redis可以存储键与5种不同数据结构类型之间的映射,这5种数据结构类型分别为String(字符串)、List(列表)、Set(集合)、Hash(散列)和Zset(有序集合)。 redis与spring的整合一般分为spring-data-redis整合和jedis整合,先看看两者的区别1、引用的依赖不同:spring-data-redis使用的依赖如下:&lt;depen…

    2025年10月17日
    3
  • MySQL8.0.19 JDBC下载与使用「建议收藏」

    MySQL8.0.19 JDBC下载与使用「建议收藏」MySQLJDBC下载链接MySQLCommunityDownloadsJAVA在IDEA中使用在Eclipse中使用

    2025年5月29日
    4
  • L2-014 列车调度 (25 分)详解

    L2-014 列车调度 (25 分)详解火车站的列车调度铁轨的结构如下图所示。两端分别是一条入口(Entrance)轨道和一条出口(Exit)轨道,它们之间有N条平行的轨道。每趟列车从入口可以选择任意一条轨道进入,最后从出口离开。在图中有9趟列车,在入口处按照{8,4,2,5,3,9,1,6,7}的顺序排队等待进入。如果要求它们必须按序号递减的顺序从出口离开,则至少需要多少条平行铁轨用于调度?输入格式:输入第一行给出一个整数N…

    2022年7月26日
    8

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号