设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7689|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 3 j; T: `% b2 _
$ T6 R& R0 _! j2 b: [
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. t6 [8 j) h( J) z8 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- B  @. l* D4 L4 H: |swarm.SignatureNotFoundException8 W, k) p- W. h' u
        at swarm.Selector.<init>(Selector.java:76)7 K+ q' o( {9 Y7 f) I
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37): F5 n& N1 ]: [, \0 K$ B' Z* d
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
, r1 ]$ U. M0 S4 q. T3 Y% K0 {* ]1 o* n3 _/ E9 B
/ I, Y+ U3 i2 v# w; W, T. @
import swarm.objectbase.SwarmImpl;% Y" ]; }0 R1 k8 v; Y/ ~# D2 }
import swarm.objectbase.Swarm;
& G* L, k4 `& k( X* Ximport swarm.activity.ScheduleImpl;
+ e5 n5 q0 L; W* Cimport swarm.activity.Activity;
( q# J8 c0 }8 y" q9 j0 cimport swarm.activity.ActionGroupImpl;3 W# ^5 Z) U/ @- w
import swarm.collections.ListImpl;
+ C; _0 o, y( L1 Cimport swarm.defobj.Zone; 2 E! h" \  X. |5 r2 L
import swarm.Globals;
, n: g. Q* S4 s+ j( [import swarm.Selector;
( {, z+ m* i/ e/ M& z) j5 |import swarm.activity.ActionGroup; # t2 l! A8 v# b4 F) t1 `
class Agent {! E6 R, @8 l* n5 E
        char id;/ X6 O5 U; x% z2 I5 k$ x

4 o6 z0 N7 B7 i5 M1 w        Agent(char id) {* r  X* R7 e1 D+ F
                this.id = id;
- ^/ ]) k3 T; ?        }6 p, @( [& d# R3 C/ d2 \" h

# V6 _- S3 P/ f( N$ I/ w        public void agentStep() {7 \( J1 j. Q+ R# s
                System.out.println(id + ":" + Globals.env.getCurrentTime());  y" T4 z+ k9 U7 i9 r' S( m7 B
        }
! w2 K& ^5 V5 ~9 F}0 \( J* H% M! |, Z$ X' Q

! z7 F1 D' H6 N) v4 v- hpublic class ActionGroupDemo extends SwarmImpl {
3 C0 y! o' `! w        ScheduleImpl schedule;4 ^+ I+ t$ q+ Y. c" w7 t3 k* S4 \) m
        ActionGroupImpl actionGroup;
+ v, s9 B2 Z0 \5 `+ e        ListImpl list;; H6 `) i, q6 b: `4 P' I4 }
        char Id = 'a';  j6 r0 f7 C  ]0 S! u
/ `( h. f7 Q+ P& z' }2 B' ]
        ActionGroupDemo(Zone aZone) {& z( V' C" F! t; p% b4 i! W/ G1 f
                super(aZone);$ p% N& M1 f1 n% C
                list = new ListImpl(aZone);
! y: _- {- f# o0 j- d" Q                swarmSetp();
$ I0 F5 A6 B% \  o- O* x                actionGroup = new ActionGroupImpl(aZone);2 w! f& `( Y7 h6 _2 e
                schedule = new ScheduleImpl(aZone);
. r# y0 b) K8 w! x                try {4 a. x$ F5 P6 ^# @
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
" Z& b0 l5 R- ]0 a" W/ Q; U5 O' R% {                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行* l1 t/ K( C" |) F4 a$ K
                        / p1 `: v2 ^) z8 m( r% d
                        actionGroup.createActionForEach$message(list, agentSel);
) \; s+ f6 _$ T  n0 F                        actionGroup.createActionTo$message(this, swarmSel);4 n; E( p0 m/ x0 e4 P! s8 |
                        schedule.at$createAction(0, actionGroup);
( {7 }$ t; G0 j7 M/ N, F# h" ]                        schedule.at$createAction(1, actionGroup);
" }3 V1 C6 s2 _" m2 A6 k% R                        schedule.at$createAction(2, actionGroup);
' t+ ~5 K2 p' u# K2 `- {
! V. Q5 X, T" q( j                } catch (Exception e) {. H! I' N3 m3 f6 H; |
                        e.printStackTrace(System.err);
3 e4 m8 C* i6 p( a  v                        //System.out.println(e);
) A3 ], e  G  a5 [3 u                        System.exit(1);
4 O1 R5 A9 o3 ]1 s                }% {. z& {* U( m3 J
. X. O2 S* V! I# v

. o6 c/ M) o& E& C  M2 P; S3 |        }
" ~; w. l% j5 D) H! U0 m! S& z% `: B
        private void swarmSetp() {
+ p6 c+ V, b0 c" Q                list.addLast(new Agent(Id));
& [" B6 U3 ~( w; t+ |' ]* y                Id++;
/ w' J; d6 d7 ?8 a; r* b        }0 X" y& U9 Q9 L; ~: i. X# W
0 y! k# n2 a3 i" c: _
        public Activity activateIn(Swarm context) {7 l& F# L, B0 w/ w
                super.activateIn(context);" [. I9 z/ t" q( q1 o6 Z
                schedule.activateIn(this);' k* R9 p% y, S8 T' s! }" T$ j) l! E4 b
                return getActivity();% b3 U  I: g1 j* y
        }
2 Y9 i) Q  P  m5 p# N: z3 j) F+ O
        public static void main(String[] args) {) x) D6 g* ~% A4 R  f" S& U% O. e
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) E; r( c) F5 G, p7 y1 z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 Z# r4 F, h) J( S4 m$ O; f
                swarms.buildObjects();
. O; L0 S& [; `7 Q6 g3 N, Z                swarms.buildActions();
( G0 f* y! I2 M4 C3 b5 K                swarms.activateIn(null).run();& y- j5 V( ]8 W; r6 Y" E: ]
        }
$ ^, D- _6 Z0 |4 `9 x4 _
; o- H/ S$ M! x  I* y# o}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-11 12:34 , Processed in 0.022094 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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