1.tortoisehg è¦å
å®è£
mercurialå
2.几款最佳的源码代码审查工具
3.Ubuntu下编译OpenJDK9
4.ZNHG600光猫最新破解超级密码方法详解
5.常见的Web源码泄漏及其利用
6.详细过程ubuntu下面编译openJDK8,修改源码IDEA中调试
tortoisehg è¦å å®è£ mercurialå
çæ¬æ§å¶ç³»ç»ï¼Version Control System / Revision Control Systemï¼æè å«åæºç æ§å¶ç³»ç»Source Control Systemï¼ä»¥ä¸ç®ç§°VCSï¼ï¼æ¯è½¯ä»¶å¼å人åæ常ç¨çå·¥å ·ä¹ä¸ï¼ç±äºVCSæ¯å¦æ¤å¸¸ç¨ï¼æ以è±ä¸äºæ¶é´å»äºè§£å®æ¯æå¿ è¦çã
åå¸å¼çæ¬æ§å¶ç³»ç»ï¼Distributed Version Control System,DVCSï¼ï¼æ¯ç¸å¯¹äºéä¸å¼çæ¬æ§å¶ç³»ç»ï¼Centralized Version Control Systemï¼CVCSï¼èè¨çï¼æ¯å¦ï¼ä½¿ç¨äººæ°æå¤çSVNãVSSå°±æ¯å ¸åçCVCSãå¦æä½ æ¾ç»ç¨è¿SVNæVSSï¼å°±å¯ä»¥å¾å®¹æç解ä»ä¹å«åâCentralizedâ ãCVCSï¼æ¯æåªæä¸ä»½æ°æ®ä»åºåæ¾å¨ä¸å°æå¡å¨ä¸ï¼ææ客æ·ç«¯é½è¿æ¥å°è¿å°æå¡å¨ä»¥è¯»åæ°æ®ä»åºçå·¥ä½æ¨¡åãèDVCS模ååä¸ç¶ï¼æ¯ä¸å°ç»ç«¯é½æä¸ä»½å®æ´çæ°æ®ä»åºï¼ææç»ç«¯ä¹é´é½æ¯å¹³ççï¼å¹¶ä¸åå¨å¯ä¸çä¸å°âæå¡å¨âãææçç»ç«¯ä¹é´ï¼å¯ä»¥èªç±å°äº¤æ¢æ°æ®ã
DVCSå¯ä»¥å¾å®¹æå°æ¨¡æCVCSçå·¥ä½æ¹å¼ï¼åªè¦æå®ä»»æä¸å°ç»ç«¯ä½ä¸ºæå¡å¨ï¼è§å®ææ人é½å°æ´æ¹æ¨éå°è¿å°æå¡å¨ï¼å¹¶ä¸ææ人ä¹é½ä»è¿å°æå¡å¨è·åæ´æ°å³å¯ãèä¸CVCSç¸æ¯ï¼DVCSåæ以ä¸ä¼ç¹ï¼
a) æ´å å®å ¨ç代ç 管çã
å¨SVNä¸ï¼æ¯æ¬¡æ交é½æå³çæ£å¼ç代ç 被æ´æ¹ï¼å«äººå¯ä»¥ç«å³çå°æ¤æ¬¡æ交ï¼å¹¶ä¸å¯è½ç´æ¥å½±åå°æ£å¨è¿è¡çç³»ç»ï¼å¯è½ä¼æ人ç«å³å°æ¤æ´æ°æ·è´å°æå¡å¨ï¼ï¼è¿å¯¼è´ä¸ç³»åçé®é¢ãé¦å ä¸ä¸ªé®é¢æ¯ï¼æ人å¯è½ä¼æ æä¸æ交é误çãä¸å¯é ç代ç ãå ¶æ¬¡ï¼è¿å¯¼è´ç¨åºåä¸æ¢è½»æç¾å ¥æ´æ¹ï¼å½ç¨åºè¿è¡ä¸é¡¹èæ¶å¾ä¹ ï¼å¤§éä¿®æ¹çå·¥ä½æ¶ï¼ææçä¿®æ¹é½æ¯æ²¡æç»è¿VCSä¿æ¤çï¼è¿æ¯é常å±é©çï¼ä¹ä¸ç¬¦å使ç¨VCSçåè¡·ã
èå¨DVCSä¸åä¸åï¼å 为é¦å æ交å°èªå·±æ¬å°ä»åºä¸ï¼æ以ç¨åºåå¯ä»¥å°½éå°åæ°æ®ä»åºæ交æ´æ¹ï¼èä¸ç¨æ å¿è¿ä¼å½±åå°å ¶ä»äººæç³»ç»ï¼è¿å¯ä»¥å°ç¨åºåå¨å¼åè¿ç¨ä¸æ产ççå个çæ¬ä»£ç å®åå°ä¿æ¤èµ·æ¥ï¼å¨å¨æè¾é¿çå¼åä¸ï¼è¿ä¸ç¹ç¹å°¤å ¶æ¾å¾éè¦ã
è½ç¶å¨SVNä¸æåæ¯åè½å¯ä»¥è¾¾å°ç±»ä¼¼çç®çï¼ä½æ¯åæ¯å并æä½èµ·æ¥è¾ä¸ºç¹çï¼èä¸é常容æåçå²çªï¼ç»æå°±æ¯å¾å¤åºå½ä½¿ç¨åæ¯çåºåå ¶å®å¹¶æ²¡æ使ç¨åæ¯ã
b) æè±ç½ç»çæç¼ï¼éæ¶è¿è¡å®æ´çå·¥ä½ã
å¨SVNä¸ï¼ç±äºä¸å¤®ä»åºåªæä¸ä¸ªï¼æ以任ä½éè¦ä¸ä»åºæ²éçå¨ä½ï¼ä¾å¦æ¥è¯¢åå²çæ¬ï¼æ交æ´æ¹ççï¼å¿ é¡»é¦å èç½ï¼èå¨æäºæ¶åï¼è¿ä¸æç¼å°±æ¾å¾ä¸æ¹ä¾¿ï¼èå¨DVCSä¸ï¼åéæ¶å¯ä»¥ä¸æ°æ®ä»åºè¿è¡æ ç¼çæ²éï¼ç¨åºåå¯ä»¥åå ¶ä¸ä¸åæ交æ°çæ´æ¹ï¼ææ¥è¯¢æ个æ件çåå²çæ¬ï¼é½å¯ä»¥å¨å®å ¨æç½çæ åµä¸è¿è¡ã
c) æ´å æºè½ç代ç å并ã
å½ä¸¤ä¸ªäººå¯¹åä¸ä»½ä»£ç è¿è¡å·¥ä½æ¶ï¼ä¸¤ä¸ªäººçä¿®æ¹å¯è½ä¼äº§çå²çªãç¶èï¼SVNå½æ°çæ´æ¹è¢«æ交æ¶ï¼SVNåªè½æ¥çæç»ççæ¬ï¼è¿å¯¼è´SVN对æäºå·®å¼å¾å¤§çæ件æ æ³èªå¨å并ï¼è人工å并æ¯å¾è´¹æ¶è´¹åçãå¨Mercurialä¸ï¼å½ä¸¤ä¸ªä¸åççæ¬éè¦è¿è¡å并æ¶ï¼DVCSå¯ä»¥ä½¿ç¨è¿ä¸ªæ件ææçä¿®æ¹åå²æ¥ä¸æ¥ä¸æ¥å°è¿åæ´ä¸ªä¿®æ¹çè¿ç¨ï¼è¿æ ·ä¸æ¥ï¼Mercurialçå并è½åå°±è¿è¿å°è¶ è¿äºSVNï¼æ以å¨Mercurialä¸ï¼æå°ä¼åºç°äººå·¥å并çé®é¢ã
d) æ´å¿«çååºé度. ç±äºåç§æ¥å¸¸æä½é½æ¯å¨å¼å人åçæ¬æºè¿è¡ç, æ以ä¸ä»»ä½çCVCSç¸æ¯, DVCSçæä½ååºé度é½å°å¿«å¾å¤å.
å¦å¤ï¼å¯¹äºä¸ªäººé¡¹ç®æ¥è¯´ï¼å°¤å ¶éå使ç¨DVCSï¼å 为DVCS天ç¶å°æ é¿ç®¡çæ¬å°çæ°æ®ä»åºï¼ä¸åCVCSé£æ ·å¿ é¡»æ¶è®¾ä¸ä¸ªæå¡ç«¯ï¼ä¸ä¸ªå®¢æ·ç«¯ã
å æ¤æ»çæ¥è¯´ï¼åå¸å¼ç»æçMercurialå ·æSVNçææä¼ç¹ï¼èåæ¯SVNæ´å åçææã
ç®åçDVCSæ主è¦æMercurialåGit两款软件ï¼å ¶ä¸Gitçåä½è æ¯Linus大ç¥ï¼ç¨Cè¯è¨ç¼åï¼è¿è¡æ§è½ä¼äºMercurialï¼Mercurialæ¯ç¨Pythonåçï¼å¤©ç注å®æ§è½ä¸å¯è½æ¯Gitæ´å¿«ï¼ï¼ä½æ¯Linus以åæåçå¼åå¢é并ä¸æç®å¼åWindowsçæ¬çGitï¼æ以Gitæ¬èº«å¹¶ä¸æ¯æWindowsï¼åæ¥æäºä¸ä¸ªmsysgit项ç®å°Git移æ¤å°äºwindowså¹³å°ï¼å¹¶ä¸æäºå¼åäºä¸ä¸ªTortoiseGit客æ·ç«¯ï¼ä½¿å¾Gitå¨windowsä¸ä¹åå¾å®¹æ使ç¨äºï¼ä½æ¯å¨æ使ç¨çè¿ç¨ä¸ï¼è¿ç»åçå¤æ¬¡ä¸¥éçæ éï¼ææçå ¶å¨windowsä¸è¿ä¸å¤æçï¼å æ¤éç¨ä¸æä½ç³»ç»å ¼å®¹å®ç¾çMercurialã Mercurialè¿ä¸ªåè¯æ¯æ°´é¶çææï¼æ以Mercurialçå½ä»¤åéç¨äºæ°´é¶çåå¦å ç´ ç¬¦å·hgï¼è¿ä¹æ¯ä¸ºä»ä¹å®çå¾å½¢ç»ç«¯å«åTortoiseHgï¼èä¸æ¯TortoiseMercurialä¹ç±»çã
è¿éï¼/read/ï¼æä¸ä»½å®æ´çMercurialææ¡£ï¼è¯¦ç»æè¿°äºMercurialçåç§ç»èï¼ä¸è¿é´äºå ¶æ¯è±æçï¼æç®ååç½åä¸ä¸Mercurialçåºæ¬ç¨æ³ã
é¦å ï¼ä¸è½½å¹¶å®è£ ä¸ä¸ªTortoiseHg with Mercurial(mand hereï¼ è¿ä¼æå¼ä¸ä¸ªcmdå½ä»¤çªï¼è·¯å¾å°±æ¯å½åæ件夹ï¼ç´æ¥è¾å ¥å½ä»¤hg initï¼ å³å¯å®ææ°æ®ä»åºçå建ã
ï¼ä»¥åæä¹ä¸å欢ç¨å½ä»¤ï¼ä½æ¯ä½¿ç¨Mercurial以åï¼æåç°å ¶å®ç¨å½ä»¤å¹¶ä¸éº»ç¦ï¼å¾å¤æ¶åæ¯TortoiseHgæ¥å¾è¿è¦èæä¸äºï¼
image
å建æ°æ®ä»åºä»¥åï¼å次å³å»ï¼ ä¼åç°é¦å å¨ä¸çº§å³é®èåä¸å¢å äºHg Commité项ï¼èå项ä¸ååºç°äºä¸å¤§æå¯ç¨å½ä»¤ãè¿äºææ¶ä¸ç¨å»çå®ã
é便æ°å»ºä¸ä¸ªææ¬æ件ï¼ç¹å»hg commitï¼è¾å ¥ä¸ç¹æ³¨éï¼Mercurial强å¶è¦æ±æ¯æ¬¡commitå¿ é¡»å注éï¼ï¼ç¹å»æ交å³å¯ã
image
注æ左侧çæ件åè¡¨ï¼ å¿ é¡»å æä¸å¾ãå 为æ¯åMercurialæ°å¢æ件ï¼æä»¥å¿ é¡»å æ§è¡addå½ä»¤ï¼ ç¶åæè½commitï¼ä½ç°å¨è¿ä¸ªå¾å½¢çé¢ä¸ï¼å°±æ¯å å¾ä¸å·¦è¾¹ï¼åç¹commitã
å¦æ使ç¨å½ä»¤ï¼ååå«è¾å ¥ï¼
hg add
hg commit âm âsome comment hereâ
第ä¸è¡hg addä¼å°æææ°å¢çæ件æ 记为éè¦Mercurialè¿è¡è¿½è¸ªç®¡çï¼ç¬¬äºå¥åæ¯åæ°æ®ä»åºæ交修æ¹ã
è¿ééè¦æ³¨æçæ¯Updateå½ä»¤ãMercurialçUpdateä¸SVNå¨å®é ææä¸å·®å¼å·¨å¤§ãUpdateæ¯ç¨äºä½¿å·¥ä½ç®å½ä¸æ¬å°æ°æ®ä»åºä¹é´ä¿æä¸è´ãæ以ï¼å¦æä½ æ¯å人项ç®ï¼æ»æ¯å¨å·¥ä½ç®å½æ交修æ¹çè¯ï¼å®ä»¬è¯å®æ¯å®å ¨ä¸è´çï¼Updateå½ä»¤å°æ°¸è¿ä¸å¿ æ§è¡ãï¼è¿å¤§çº¦ä¹æ¯ä¸ºä»ä¹TortoiseHgæUpdateå½ä»¤ä½ä¸ºäºçº§å½ä»¤èä¸åCommité£æ ·æ¯ä¸çº§èåå½ä»¤ï¼ é£ä¹ä»ä¹æ¶åéè¦Updateï¼å çä¸ä¸pushåpullã
åå®æ们åæå建çä»åºä½äºD:\repo1ï¼ ç°å¨æ§è¡å½ä»¤hg clone d:\repo1 d:\repo2ï¼ æè å¨tortoisehgä¸ç¹å»cloneæ§è¡ç¸åºæä½ï¼å¾å½¢çé¢ä¸åä¸ä¸æªå¾ï¼å¾ç®åçæä½ï¼ï¼è¿æ ·å°±å建äºä¸ä¸ªæ°çä»åºrepo2ï¼ å®ä¸repo1æ¯å®å ¨ç¸åçãç°å¨årepo1æ交å¦å¤ä¸äºä¿®æ¹ï¼æ¾èæè§çï¼repo2ä»ç¶åçå¨cloneæ¶çç¶æï¼repo1çææ°ä¿®æ¹repo2并ä¸ç¥éã å¦æç°å¨å¸ærepo2ä¹è½æ´æ°å°repo1çææ°ç¶æï¼ åæ两ç§æä½æ¹å¼ï¼
1. Pushã Push顾åæä¹ï¼æ¯æ¨éçææï¼å°±æ¯ä»repo1ä¸æ¨éæ°æ®å°repo2ï¼ repo2 ä¸éè¦åä»»ä½å¨ä½ãå¨repo1ç®å½ä¸æ§è¡å½ä»¤hg push d:\repo2ã æè ç¹å»tortoisehgçSyncronizeï¼ å¨åæ¥çªå£ä¸ç¹å»pushå½ä»¤ï¼
image
ï¼è¿ç§æä½æå®å¨è§å¾è¿æ¯å½ä»¤æ¹ä¾¿ä¸äºãããï¼
å ¶ä¸ï¼pushå½ä»¤åé¢çè·¯å¾å¹¶ä¸æ¯å¿ é¡»çãæ¯ä¸ªæ°æ®ä»åºå¯ä»¥æä¸ä¸ªé»è®¤çè¿ç¨ä»åºï¼å¦æå¨repo1ä¸è®¾ç½®äºé»è®¤è¿ç¨ä»åºä¸ºrepo2ï¼ ååªéè¦æ§è¡hg push å°±å¯ä»¥äºãå½æ§è¡cloneå½ä»¤æ¶ï¼ä¼èªå¨ææ¥æºä»åºè®¾ä¸ºé»è®¤è¿ç¨ä»åºï¼æ以å¨repo2ä¸å¯ä»¥ç´æ¥æ§è¡hg pushæhg pullï¼ ä¼èªå¨å°repo1ä¸åæ¥æ°æ®ã
å 为repo1并ä¸ç¥érepo2çåå¨ï¼ æ以å¦æéè¦æå¨è®¾ç½®é»è®¤è¿ç¨ä»åºï¼å¦ä¸è¿æ ·æä½ï¼
ç¹å»å³é®â>TortoiseHgâ>Repository settings,
image
ç¹å»Edit file, å¦å¾æ示, ä¿®æ¹default为éè¦æå®çè·¯å¾å³å¯.
ä¿®æ¹å®æ以å,å³å¯ç´æ¥æ§è¡hg push èä¸ç¨åæhg push d:\repo2äº.
2. Pull. Pullæ¯æåçææ, å³è¢«æ´æ°çä»åºä¸»å¨ä»è¿ç¨ä»åºæåæ°æ®. å¨æ¬ä¾ä¸, å°repo2çç®å½ä¸æ§è¡hg pullå³å¯. å 为repo2æ¯ä»repo1 cloneæ¥ç, æ以repo2å·²ç»èªå¨ærepo1设置é»è®¤è¿ç¨ä»åº, ä¸éè¦ååhg pull d:\repo1äº.
æ以,æ 论æ¯ä»repo1端push, è¿æ¯ä»repo2端pull, é½å¯ä»¥è¾¾å°æ´æ°repo2æ°æ®ä»åºçç®ç.
ç¶èéè¦æ³¨æçæ¯, æ 论æ¯pushè¿æ¯pull, é½åªæ´æ°æ°æ®ä»åº, èä¸æ´æ°å·¥ä½ç®å½.
è®°ä½è¿ä¸ç¹é常éè¦, å¦åå¯è½ç»å¸¸ä¼è¿·æ为ä»ä¹ä¸é¢æä¸ç¬¦. pushæpullä¹å, repo2çæ°æ®ä»åºä¸å·¥ä½ç®å½å·²ç»ä¸ç¬¦, è¿æ¶å°±éè¦å¨repo2ç®å½ä¸æ§è¡hg updateå½ä»¤, å³å¯å°å·¥ä½ç®å½æ´æ°å°ä¸æ°æ®ä»åºä¸è´.
å½åSVNé£æ ·ä½¿ç¨è¿ç¨æå¡å¨ä½ä¸ºä¸»æºæ¶, æ¯æ¬¡Pullåå¯ä»¥è¯å®æ¯è¦æ§è¡updateç, è¿æ ·ä¸¤æ¬¡æä½æ¾ç¶å¸¦æ¥ä¸ä¾¿, å¨TortoiseHgä¸, å·²ç»éæäºè¿æ ·çå½ä»¤, é¦å å³é®â>TortoiseHgâ>Syncronize, æå¼åæ¥çªå£,
image
ç¹å»Post Pull, å¨å¼¹åºçå°çªå£ä¸éæ©Update, è¿æ ·æ¯æ¬¡pullä¹åå°±ä¼ç«å³æ§è¡updateäº.
æè å¨é¡¹ç®çæ ¹ç®å½ä¸åä¸ä¸ªæ¹å¤çæ件, å æ¬ä»¥ä¸ä¸¤è¡å³å¯:
hg pull
hg update
以åæ¯æ¬¡éè¦è·åæ´æ°æ¶, åå»ä¸ä¸è¿ä¸ªæ¹å¤çå³å¯, æè§å¾è¿æ¯å½ä»¤æ¹ä¾¿â¦â¦
以ä¸ç®åç½åäºMercurialçåºæ¬ç¨æ³, 对äºæ¥è¯¢åå²ä¿®æ¹çæä½, TortoiseHgçèåå·²ç»é常ç®å, ä¸SVNä¹æ²¡æä»ä¹å·®å«, èªè¡ç¹å»çä¸ä¸å³å¯.
å ³äºå¨ä¸¤å°çµèä¹é´ä¼ éæ°æ®ï¼Mercurialèªå¸¦äºä¸ä¸ªç®åçServeå½ä»¤ï¼ä¾å¦å¨d:\repo1ç®å½ä¸æ§è¡å½ä»¤hg serverï¼ ä¼ç«å³å¯å¨ä¸ä¸ªé»è®¤å¨ç«¯å£çå¬çæå¡è¿ç¨ï¼è¿ä¸ªå½ä»¤ä¼è¿åä¸ä¸ªurlå°åï¼å¦ä¸å°çµèå¯ä»¥ç¨hg clone <url> local-path çå½¢å¼å¤å¶æ¬æºçrepo1ä»åºï¼ä½æ¯è¿ä¸ªserveå½ä»¤æ¾ç¶åªæ¯ä¸ä¸ªé常ç®åç临æ¶éå¾ï¼å¦æè¦é ç½®ä¸å°ä½ä¸ºæå¡å¨çä¸å¤®ä»åºï¼å½ç¶å°±ä¸è½ä» ä» ä½¿ç¨serveå½ä»¤äºï¼èæ¯åºè¯¥ä½¿ç¨IISæå ¶å®web serverï¼ä¸ä¸ç¯å°±ä»ç»å¦ä½å¨IISä¸æ¶è®¾ä¸ä¸ªMercurialçWeb Server,请åé åå¸å¼çæ¬æ§å¶ç³»ç»Mercurial
几款最佳的代码审查工具
好的代码审查器可以显著提升代码质量,减少错误概率。分析在众多可用的源码代码审查工具中,挑选出最佳者并非易事。分析专家建议下,源码以下款工具被列为我们推荐的分析网址源码修改最佳代码审查工具。 CodeStriker是源码一款免费且开源的Web应用,它提供基于Web的分析代码审查功能。开发者能够在此系统中记录问题、源码意见和决定,分析并在数据库中保存。源码它为代码审查提供了舒适的分析工作区域。 RhodeCode是源码一款出色的代码审查工具,能帮助你发现并清除代码中的分析bug和问题。它确保代码质量得到提升,源码问题得到及时解决。 Codebrag是一款轻量级代码审查工具,能够解决诸如非阻塞审查、智能邮件通知和在线注释等问题,简化代码审查流程。 Phabricator是一个开源软件和Web应用,具备代码审查、托管GIT /Hg/ SVN、查找bug、浏览和审计源代码等功能,是开发人员的首选工具。 Codifferous是一款免费代码审查工具,提供快速的代码审查服务。无论何时何地,Codifferous都能让团队协作审查工作变得更加容易。即使错过一个pull请求,也无需担心,aide web源码它允许检查任意分支上的代码,并随时留下注释、获得反馈。 Getbarkeep是“非常友好的代码审查系统”,让你以快速有趣的方式检查代码。它还能帮助你翻阅Git存储库的提交、查看diff文件、写注释,并将这些注释通过电子邮件发送给下一位提交者。 Crucible是一款深受欢迎的代码审查工具,可审查代码、讨论修改,并通过其灵敏的审阅流程确定缺陷。Crucible使得Subversion、CVS、Perforce等版本控制软件的代码审查变得简单。 Code Review Tool允许团队成员通过简单而有效的方式协作审查代码。它提供正式代码检查的所有优势,但所需精力和时间更少。它支持正式和轻量级的代码审查过程。 Malevich审查代码非常简便。审查人员在同一个浏览器中即可查看文件的原始版本和新版本,轻松为代码行添加注释。提交注释后,其他代码审查人员可共享。 SmartBear是一个帮助团队通过共同的开发、测试和管理工作生产出高质量代码的代码审查工具。它允许团队在透明、协作的框架下进行同行代码审查、用户故事和测试计划,即时保持整个团队知晓对代码所做的带控制源码更改。 Review Assistant是与Visual Studio集成的简单且优秀的代码审查工具。你可以在审查级别、特定的源代码块或源代码条上添加注释,在预定会议之外启动与团队成员关于代码的讨论,标记需要修正的注释和缺陷之处,并在代码编辑器中显示审查注释。 Review Board是节约时间、资金和精力的代码审查工具。它提供语法高亮的代码,方便快速阅读。 Peer Review Plugin通过提供基于Web的友好审查环境,节省开发人员在代码审查会议上的时间浪费。 Code Reviewer是一款免费、简单且易于部署和使用的代码审查工具,由SmartBear开发,也是Collaborator的发明者——业界第一家推出商用代码审查工具的公司。 Code Analysis Tool着眼于解决两个基本问题:现代IT系统由多个团队和许多开发人员构建的数千个组件组成,以及测量这些系统的软件质量需要涉及多种技术和代码工具。CAST代码分析技术提供了解决方案。 jArchitect简化了复杂Java代码库的管理。它能够分析代码结构、指定设计规则、执行高效的代码审查,并通过比较不同版本的代码了解改进情况。 Reviewale是新推出的代码审查工具,功能包括语法高亮、发现bug/问题、改进代码、干净的用户界面、自定义代码字体等。Ubuntu下编译OpenJDK9
为了在Ubuntu下编译OpenJDK9,联盟推广源码首先安装VMware Workstation Pro和Ubuntu ..2 LTS,确保系统干净无其他应用。
接着,通过Mercurial(hg)获取OpenJDK9的源代码,安装并下载hg,然后访问OpenJDK官网获取源代码的下载地址。按照指导,使用hg下载源代码,注意要执行get_source.sh脚本。
在下载过程中可能会遇到问题,如“exited abnormally”或“stream ended unexpectedly”,此时可重新执行下载脚本。完成下载后,会生成约1GB的文件,包含大量.hg文件夹。
阅读OpenJDK官网提供的JDK 9 Build README,以了解编译步骤。在配置阶段,应避免使用系统自带的OpenJDK8作为Boot JDK,推荐手动下载安装Oracle的Java 8版本以确保稳定性。
访问Oracle官网下载Java 8,解压后将其放置在指定目录。配置编译环境时,可能会遇到缺少X库的问题,通过执行特定脚本解决。在多次尝试和调整后,完成配置。
使用make images命令开始编译过程,整个编译耗时约8分钟。编译完成后,生成的站长图库 源码build文件夹包含了所需JDK文件。将整个jdk文件夹复制到指定目录,并进行简单测试以验证编译成功。
对于Mac和Windows用户,OpenJDK9的编译流程类似,只需根据各自操作系统的特定需求进行调整。
ZNHG光猫最新破解超级密码方法详解
最近家中光猫(型号为ZNHG)的配置模式发生了变化,导致之前的超级管理员密码失效。经过多次尝试,发现先前的破解方法不再有效,因此我决定自己研究新的破解策略。
原破解步骤中,通过在Chrome浏览器输入光猫的IP地址(..1.1)进入管理界面,并按照特定路径进行操作,可以找到超级管理员密码。但如今,跳转后的页面显示的密码为位的数字和小写字母组合,这与先前的明文密码形式不同。
观察登录页面的源代码后,我发现了一些关键信息。登录页面中引用了名为md5.js的文件,并且在处理用户输入密码时,会计算其MD5值并与服务器端的乱码进行对比。这意味着,超级管理员密码的计算过程涉及到MD5哈希函数。
由于超管密码具有特定格式(前缀telecomadmin加8位数字),我们可以采用暴力破解的方法来尝试所有可能的组合。通过计算这些组合的MD5值,并与服务器端的乱码进行比较,最终找到匹配的密码。
针对这一需求,我提供了一个C#代码示例。如果您熟悉GitHub Actions,可以通过将其代码应用于GitHub上的服务器环境,实现自动破解过程。对于不熟悉此技术的用户,我提供了一个简单的小工具,需要在运行时具备.NET Framework 4.5.2或更高版本。
希望上述信息能帮助您解决问题,欢迎在社区分享您的成果。别忘了关注我的其他文章,了解更多关于路由器的相关内容。感谢您对我的支持!
常见的Web源码泄漏及其利用
Web源码泄漏漏洞及利用方法
Git源码泄露是由于在执行git init初始化目录时,会在当前目录下自动创建一个.git目录,用于记录代码变更等信息。若未将.git目录删除即发布到服务器,攻击者可通过此目录恢复源代码。修复建议:删除.git目录或修改中间件配置以隐藏.git隐藏文件夹。
SVN源码泄露源于其使用过程中自动生成的.svn隐藏文件夹,包含重要源代码信息。若网站管理员直接复制代码文件夹至WEB服务器,暴露.svn隐藏文件夹,攻击者可利用.svn/entries文件获取服务器源码。修复方法:删除web目录中的所有.svn隐藏文件夹,严格使用SVN导出功能,避免直接复制代码。
Mercurial(hg)源码泄露通过生成的.hg文件暴露,漏洞利用工具为dvcs-ripper。运行示例需具体说明。
CVS泄露主要针对CVS/Root和CVS/Entries目录,直接暴露泄露信息。修复工具为dvcs-ripper,运行示例同样需具体说明。
Bazaar/bzr泄露为版本控制工具泄露问题,因其不常见但多平台支持,同样存在通过特定目录暴露源码的风险。具体修复方法与运行示例需进一步说明。
网站备份压缩文件泄露是管理员将备份文件直接存放于Web目录,攻击者通过猜测文件路径下载,导致源代码泄露。常见备份文件后缀需具体列出,利用工具御剑用于这类漏洞的利用。
WEB-INF/web.xml泄露暴露了Java WEB应用的安全目录,若直接访问其中文件需通过web.xml文件映射。WEB-INF目录主要包括文件或目录,通过web.xml文件推断类文件路径,最后直接访问类文件,通过反编译得到网站源码。
.DS_Store文件泄露源于Mac系统中Finder保存文件展示数据的文件,每个文件夹下对应一个。若上传部署到服务器,可能造成文件目录结构泄漏,特别是备份文件、源代码文件的泄露。利用工具为github.com/lijiejie/ds_...
SWP文件泄露为编辑文件时产生的临时文件,是隐藏文件,若程序意外退出则保留。直接访问并下载.swp文件,删除末尾的.swp后,可获得源码文件。
GitHub源码泄露通过关键词搜索功能,容易找到目标站点的敏感信息,甚至下载网站源码。此类泄露源自代码托管平台,需注意个人代码管理安全。
总结,Web源码泄漏涉及多个环节,从代码版本控制到备份存储,再到代码托管平台,每个环节都可能成为攻击点。修复策略包括删除隐藏文件、严格使用版本控制功能、加强代码备份安全措施以及提高代码托管平台安全意识。
详细过程ubuntu下面编译openJDK8,修改源码IDEA中调试
编译JDK源码的最佳实践是亲手操作,理解其流程。网上有许多教程,但只有实际操作,才能深刻理解整个过程。
首先,环境准备上选择Ubuntu .,因为在此版本下,编译过程中遇到的异常较少。使用低版本Ubuntu的主要目的是为了专注于编译源码和阅读源码,而不是研究版本兼容性问题。高版本的OpenJDK理论上可行,但这里更多是选择已熟悉使用的OpenJDK 8版本。
获取OpenJDK 8源码有两种方式:利用Mercurial(hg)或手动下载。Mercurial是OpenJDK使用的代码管理工具,通过hg clone命令下载源码。在遇到执行卡死问题后,改用手动下载方式。
下载地址为jdk.java.net,选择相应版本下载。下载后得到openjdk-8u-src-b-_jan_.zip,解压后重命名为openjdk8。
接着,需要安装基础JDK作为编译环境。可选择手动下载已编译好的JDK7作为引导JDK,如openjdk-7u-b-linux-x-_dec_.tar.gz。解压并重命名后,配置系统环境变量,确保编译过程顺利进行。
安装编译所需的依赖,并检查是否遗漏。执行命令检查依赖,如有缺失,按照提示进行安装。ccache配置后出现版本过旧的提示,不影响编译。
编译前需进行一系列检查:设定语言选项、查看PATH环境变量、清除JAVA_HOME变量,确保编译环境配置正确。执行make all命令,过程中可能会遇到报错,通过修改相关源文件,如hotspot/make/linux/Makefile的SUPPORTED_OS_VERSION变量,添加4%,解决内核版本问题。
验证编译成功,通过执行java -version命令确认。编译后源码使用,如创建Test.java源文件,通过Javac编译器编译为Test.class文件。运行Test.class文件,输出信息确认编译成功。
在IDEA中使用JDK源码调试,首先安装IntelliJ IDEA,下载并解压到opt目录,通过idea.sh启动。将编译好的JDK导入IDEA,配置debug,去掉Before launch中的build选项,执行测试代码。
为了更方便地查看源码,可以修改JDK源码,如为System.out.println添加打印前缀。修改源码后重新编译,执行测试代码以验证修改效果。
通过实际操作和实践,对JDK源码的理解将更加深入。本指南提供了一个完整的编译和调试流程,帮助开发者深入理解JDK源码的细节。
华为HGD,已刷openWRT,求教认证Inode的办法
inode 一般都有版本限制, Openwrt里面内置的njit-client 是2.4的版本, 太老了。 网上下载Njit-client的源码, 自己修改版本号,然后编译。 我们学校就是inode。
越野機車橫行小琉球古廟石階 危險行徑恐毀損古蹟
htmlunit 网页源码_网页html源代码
pptp client 源码
modbus com 源码
全台最強營養午餐在台中! 「清水三寶」入菜奪冠
android mxplayer源码