设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8541|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 8 {: J' }1 {/ T, C: d& i
! E" _4 Y0 `( h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  W+ E  |9 V/ v# ~以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
- _# U, c6 g- @, H1 V- G" h& zswarm.SignatureNotFoundException
1 v- U0 V* s; Y        at swarm.Selector.<init>(Selector.java:76)) C+ {3 E4 y" @* s5 P3 c  C
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
, W0 C& W6 m0 v( g* I* Y8 A! V+ B        at ActionGroupDemo.main(ActionGroupDemo.java:67)
8 r- I5 z1 O2 G& r$ Y% M. q5 q' e# \5 f5 t7 Q3 G
4 Y' b" G. p  b# P- G7 H
import swarm.objectbase.SwarmImpl;
9 o% l. x$ L2 J( o& p! u+ pimport swarm.objectbase.Swarm;( r1 @' K% Y4 K# C% p! W8 d+ J
import swarm.activity.ScheduleImpl;7 w8 u$ M. g) |9 x
import swarm.activity.Activity;
' K3 M; b4 b! j" z  t, |1 r& |9 Nimport swarm.activity.ActionGroupImpl;" |6 C% }; r0 i6 ^# v
import swarm.collections.ListImpl;
1 j5 a% y& I, d/ N7 J$ V# C7 `import swarm.defobj.Zone; 2 S* ^- g- x% {. V
import swarm.Globals;
6 q5 j5 I4 J2 z2 Bimport swarm.Selector;
6 G6 B: @+ u" @9 Q) pimport swarm.activity.ActionGroup; ) H* t! E) ?: D! L$ q# z
class Agent {
* r5 v# [6 \1 U  z( z2 @        char id;4 L% U: y, S' C. l) H
, P" Z6 j8 x; }
        Agent(char id) {
, s3 c1 d. `! d2 R% O                this.id = id;
- Q- [7 `+ d, \* G* d/ h        }" U! g- N, r/ q" r% Q

- V8 C6 F  U/ ?4 k( ]: Q        public void agentStep() {2 j( z3 u& J2 s: j4 N+ W% S" _
                System.out.println(id + ":" + Globals.env.getCurrentTime());# @1 f' F+ x. P6 n- {" ~2 ?
        }
4 z. I' A+ x9 v0 d' _}
1 S0 e7 B6 o  ?* O% J# k/ W5 a# j: L8 k8 z: M) v
public class ActionGroupDemo extends SwarmImpl {% X2 E1 R6 H$ a0 g
        ScheduleImpl schedule;2 O- R  ?7 r" A' ~1 b( M- N4 U
        ActionGroupImpl actionGroup;
, E- f3 s; X0 Z# W' t        ListImpl list;+ c  w7 f/ i$ f2 E; P9 y; a
        char Id = 'a';
, N, C( O/ z9 E/ F; b3 y/ y3 ]/ \  P
        ActionGroupDemo(Zone aZone) {
- s3 W+ i8 [; W" ~                super(aZone);
3 v# T! x2 O6 w% a                list = new ListImpl(aZone);7 H% F+ ~% C- \$ G) W+ G
                swarmSetp();
, Y8 O" O9 g1 G                actionGroup = new ActionGroupImpl(aZone);. n3 t2 j8 N/ U6 R
                schedule = new ScheduleImpl(aZone);; V. G/ [) D' Z! I8 s$ s) O
                try {5 w; O/ s& q! }9 W+ R+ }( E
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);4 Q7 _3 G; L2 K1 W  ]8 |
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行& b+ f; q7 h& Z4 M6 P! }, B
                        
2 E+ P, Y/ a0 o                        actionGroup.createActionForEach$message(list, agentSel);8 e  {( F6 \4 B4 r) `1 O5 y: L
                        actionGroup.createActionTo$message(this, swarmSel);0 j6 l  d; A  n# n! t
                        schedule.at$createAction(0, actionGroup);( M' C8 N; Q  P
                        schedule.at$createAction(1, actionGroup);8 n* c+ p. U# i( x; n( ~) k/ S4 P
                        schedule.at$createAction(2, actionGroup);
- K1 c. |, Y; }# \" l0 k
& a% M+ \7 f/ u) T7 J                } catch (Exception e) {+ i% x$ |6 u' _2 t4 _  |  m
                        e.printStackTrace(System.err);% E: u' u- Z5 m" [3 n' i
                        //System.out.println(e);
* h# X9 b0 C# r. \                        System.exit(1);6 I! M. d0 r, J# G) @
                }8 Z& V" b; d7 C# }8 ^% J/ q

, @: |3 ], ~+ ]  U  Z0 A
$ B8 i! V4 h% V( L) j        }8 ?1 }/ {" ^& ]0 f4 _
5 V. y0 d; A% ~% G' @& t
        private void swarmSetp() {
' r& ]0 q" v  |% m' ]                list.addLast(new Agent(Id));. J2 U4 f8 J5 N2 H5 v4 J
                Id++;
4 F/ C6 T" x( p        }  e# Q( O2 a. o/ C. c

$ n; Z* d. f5 S/ J& f& f% o        public Activity activateIn(Swarm context) {
8 j  n# p7 ~5 D                super.activateIn(context);3 a" {) ~4 o9 m2 G! J
                schedule.activateIn(this);1 l6 n) _/ v% d4 g6 k  S
                return getActivity();$ f1 n0 C5 a; Q& c2 n9 S" t8 h
        }- f- _; @0 V6 \0 E6 _# S& w

! x$ Y2 m& q( l& L3 q        public static void main(String[] args) {6 e, z3 k6 G1 Z# ]- x1 z
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);! ]6 X$ b0 {* S0 w0 z# b
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ @5 W. i2 |" G& t7 A6 C& r" a                swarms.buildObjects();& ?6 V6 y* Q$ t
                swarms.buildActions();4 S. d8 _+ E$ c2 p; p
                swarms.activateIn(null).run();
$ J! w) b  r7 G% M4 {$ H+ |        }) M! T% i# a; i" B
9 x# k+ z2 G9 y3 ~3 q( [$ p
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-16 01:47 , Processed in 0.016809 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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