设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12146|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
, Y  e6 n! u) ]. z9 m( X6 I4 v3 I6 u4 S3 g5 `! q$ D. o
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
: I# z5 Z: }/ u0 O以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) D, J- ~9 C, Z; C6 Y. Q6 r" ^swarm.SignatureNotFoundException
4 [. H3 q/ |# k$ a. t# [1 `        at swarm.Selector.<init>(Selector.java:76)
8 \* j; X. U; |6 ~0 I; ~+ x        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# [2 O" g7 D8 v! ^( T2 [) X% n        at ActionGroupDemo.main(ActionGroupDemo.java:67)) V& K" C' D) O. ~& n$ A0 s4 @6 X# f

" ]. Q4 w* ]' i7 R) @$ T  J$ O( K$ q" T) \) N3 x
import swarm.objectbase.SwarmImpl;8 o5 I5 n% I! P: s
import swarm.objectbase.Swarm;
* o5 f! q& w3 {( Nimport swarm.activity.ScheduleImpl;6 f: ~' n% {* D) ]; @5 Q! S
import swarm.activity.Activity;+ ^, h: q/ ~. Y6 r( {3 n: q
import swarm.activity.ActionGroupImpl;
! q* W. C6 j) D% W+ J1 ^import swarm.collections.ListImpl;
5 W- Z/ d" t# @+ p4 X" Dimport swarm.defobj.Zone;
  r: M, U1 x4 f, Z$ h5 Nimport swarm.Globals;' n; U- V6 M3 Y! D# Q
import swarm.Selector;( N/ R0 [2 G/ s' F+ U
import swarm.activity.ActionGroup; ; R0 Z  K% G& ?1 P. t3 b
class Agent {; T2 @8 Q9 x& y& c0 t/ N
        char id;+ M$ a" ~1 G, Q1 P

4 l& k$ k2 ]9 j: m% L# P' x0 W) |* `        Agent(char id) {
, S& j) f2 U. J8 t8 W, W                this.id = id;
. Y5 o' I& }# F$ a" T2 q( P        }
' {2 e# U$ z9 H: W; o' `
$ D( N  L% D! z$ h# i! H6 \        public void agentStep() {1 ]% f+ P; F. W/ d5 x2 Y6 t. z. L
                System.out.println(id + ":" + Globals.env.getCurrentTime());. W7 T( Q$ z4 v! d
        }
- g. ?7 r+ Q% k6 }2 [}4 a" m) V$ {6 U6 b* j3 }+ a

8 u( h; [* [1 i8 q' C' mpublic class ActionGroupDemo extends SwarmImpl {
) t' {( \; R/ T' f3 y        ScheduleImpl schedule;
1 {: ]' l5 M6 v6 z, b6 R! ]" C        ActionGroupImpl actionGroup;8 ^5 c1 n: T( i8 U; T- D9 v
        ListImpl list;
; j2 m# o  h% E) U' O        char Id = 'a';
4 R% Y& W/ ]3 R" n! X9 @7 ^1 m% U9 B+ E
        ActionGroupDemo(Zone aZone) {
5 w) @9 F0 m& l* A8 p5 W. z5 t* B                super(aZone);6 C0 W8 t  \% I
                list = new ListImpl(aZone);' F3 u$ r3 Z) w" _
                swarmSetp();
; D" Q: u# ~! K5 ~, l. Y                actionGroup = new ActionGroupImpl(aZone);
& r2 s3 Q- G4 q( J( b3 f                schedule = new ScheduleImpl(aZone);
! S: T- e' _* O# g. ?. o$ @                try {% x0 ]+ H6 a' e# }5 l6 h4 G* e( R
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
8 m* A5 }9 @7 V# l, A2 ]8 s: F" E# h                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  E$ r5 H" X4 S" F# h2 v                        
1 K5 ]7 c, k% A% O5 A, Z' J                        actionGroup.createActionForEach$message(list, agentSel);
# |; F. Z3 g6 z1 u                        actionGroup.createActionTo$message(this, swarmSel);
! [+ g. C$ S! W, h- ^                        schedule.at$createAction(0, actionGroup);" I0 [- f- w6 [; j, \- l/ h1 z+ ~  C
                        schedule.at$createAction(1, actionGroup);
8 c# e' B# x$ J- V2 M) r                        schedule.at$createAction(2, actionGroup);( c' ~: F, B. K. p' s6 }
3 ~2 A1 L$ K# H3 O; K! c, i& i5 T
                } catch (Exception e) {, O+ l- e: s/ K5 I5 ^
                        e.printStackTrace(System.err);5 {( D4 }  |3 j2 o. Q& _- U
                        //System.out.println(e);
, O) k6 N9 [% @3 N0 a                        System.exit(1);
0 ]" R/ o+ U0 H9 J                }5 a7 y& Q: S6 @& g
9 k! P' g! I4 ]4 C: ?; z5 P/ M! v6 ^
9 l) ]$ B1 q0 E; q
        }' x( @& e2 V$ g

( T& b! F6 b* e6 T  Z. \        private void swarmSetp() {3 ~2 [. A0 r5 ?
                list.addLast(new Agent(Id));2 ?+ J; b# [' q2 g& `# I! M  h
                Id++;6 U7 i% a6 {2 r* e- f
        }
" U, l: N. }0 X; \
& D7 }/ }  N4 N2 r8 R: U# W. \. A        public Activity activateIn(Swarm context) {
1 T# Y+ `4 }' n                super.activateIn(context);& E9 S7 A- A4 k4 l0 [0 h3 N* U
                schedule.activateIn(this);
( L  Z9 ~, }5 {; l' Z                return getActivity();' C# g; t$ W- C2 a
        }6 x' m2 [& `0 M

$ _0 ?. t  t9 |! D# |! ?        public static void main(String[] args) {
3 v' K% F) @' B4 L) R; f( B                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
6 S2 R$ t8 ~- o/ i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);: ~+ |! Z# \( h: W8 ?% Z- M" T
                swarms.buildObjects();
$ M6 T! y, j! I6 ^( D, G                swarms.buildActions();
3 ]3 k6 T" w& }1 ^5 N                swarms.activateIn(null).run();2 G% G6 k# o) y' ]
        }% M; y2 W; Y. d* {( J, \+ L
3 M; x$ `/ v: G$ Q1 U7 u
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-7-31 13:24 , Processed in 0.016009 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表