设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6730|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 4 J6 d; ^' x' z+ U% U

# ?( N6 b: v% F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update216 ?/ _! D. a# m; o: M8 b" I! ?
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! o8 h1 c" K" Q- X3 zswarm.SignatureNotFoundException4 A  Y  K9 `8 `+ \# y3 m
        at swarm.Selector.<init>(Selector.java:76)
$ \& Y$ Y0 N' u; o        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)/ S" W( O& p' R$ @1 X2 d, j. A% z4 o
        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 d+ Z% R6 z* A

) A8 X0 l  x$ l& l  F
# j4 Q) V* u: W* d5 ?, nimport swarm.objectbase.SwarmImpl;4 A. C' M$ x# N  `
import swarm.objectbase.Swarm;2 q/ t+ i; ]* p# T9 R7 r
import swarm.activity.ScheduleImpl;8 v2 Y# U! `% c9 M
import swarm.activity.Activity;( c+ e5 Y: G6 V, |% v5 c
import swarm.activity.ActionGroupImpl;& a' M7 ?* [6 S6 X
import swarm.collections.ListImpl;
, {, k6 X; e, x* M: a- Aimport swarm.defobj.Zone; ; x/ m/ o0 S5 F* |6 v
import swarm.Globals;
! C/ ^. V* S/ O' _3 _5 Q' t8 Qimport swarm.Selector;( e& Y; W* S5 N& M: |3 H& z6 I
import swarm.activity.ActionGroup;
/ G5 ]. K1 C/ h# C) \class Agent {
' B' w5 F% K( R7 J        char id;
2 B' ~# D4 {: I  |  l% o7 g3 Q+ c$ d
        Agent(char id) {5 x+ T) Z$ j3 u% [2 Y1 {+ T4 _8 \
                this.id = id;( E# ^/ [* O/ g. Z( a
        }
5 X& A3 c- k) L" O7 b$ \  y
  x2 {! A/ H3 b# p  {  D, Z        public void agentStep() {
' {0 d3 c* g# l9 b( M2 b+ y$ |                System.out.println(id + ":" + Globals.env.getCurrentTime());% W8 S; ^$ d7 r3 |9 d* _" t1 ?0 c
        }4 ^/ s% j6 ^6 \' t7 A/ x
}7 g6 [- K! }& H9 r1 _

! d/ `. q: L# D$ j& C: spublic class ActionGroupDemo extends SwarmImpl {
& H  k! _6 L* d3 [5 {+ M% b8 S1 G% \        ScheduleImpl schedule;6 g& y8 B  o* B- w8 V  _8 ]
        ActionGroupImpl actionGroup;
5 W8 L2 u/ _  y        ListImpl list;9 O+ t; A) c: \: j7 d( K: I
        char Id = 'a';9 ?+ E  {: s, b4 T5 s

: v/ y- s1 q$ e8 Q7 o7 V        ActionGroupDemo(Zone aZone) {5 c/ r. d1 z5 W) K" w
                super(aZone);
; a4 s; S5 ~+ ^4 l- M3 `1 x. d                list = new ListImpl(aZone);* X8 v* P& @* Z7 B
                swarmSetp();
# @6 T6 }9 b1 P) o                actionGroup = new ActionGroupImpl(aZone);7 b1 C4 D0 Q( o: s' [
                schedule = new ScheduleImpl(aZone);( H. N/ P: x/ P# G# y7 m/ b8 g
                try {/ [) z: r3 ~0 P! Z# j  @
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
; @/ Q1 O: K. a" b. b. c                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' E# ]+ ^4 g$ T( }2 [
                        3 F. L5 J* q$ S- u! u( G$ a/ y$ B
                        actionGroup.createActionForEach$message(list, agentSel);
! G( _; X% P3 a) I2 q2 U                        actionGroup.createActionTo$message(this, swarmSel);7 _3 e, d4 ]9 ^' B* \7 T
                        schedule.at$createAction(0, actionGroup);
* ~% S3 Z3 q4 W) ?$ k7 N6 I7 r                        schedule.at$createAction(1, actionGroup);
6 Q6 ^/ X% q  {! i                        schedule.at$createAction(2, actionGroup);5 m& |2 D4 k4 [% G. Z
3 b8 m9 A, f: f; H0 v3 {, g
                } catch (Exception e) {" A4 D( u- l, t+ r: }* l
                        e.printStackTrace(System.err);
3 b# Z6 p2 o* s" r. R) F8 D& X                        //System.out.println(e);) ?, B! ]# ^; }- J1 F+ r
                        System.exit(1);
; L& G& M/ P3 K0 X) m2 N0 ?6 N, G                }
2 [  H  X- {4 q& x% Y5 J5 X9 c$ W. X5 p& M# X. m3 o
, u% N8 D" }, ~7 ^$ T5 _1 b
        }/ s3 R" p, A: v9 Q$ B; X
% ^: B% j& {" ?: B9 d# ?# c+ g. ]
        private void swarmSetp() {
, x7 a: p( T: N! O                list.addLast(new Agent(Id));
3 X* R. t) d# h! n) b1 {5 \- A                Id++;( p+ z! R: Y$ R, r$ y6 [( ~) t7 B
        }2 K1 m' k  x" H7 y- H9 D

0 t, I1 {: [+ X        public Activity activateIn(Swarm context) {
+ a7 w; J2 o/ y  R4 J1 O                super.activateIn(context);
4 l5 d/ B% @$ T                schedule.activateIn(this);
3 w' j: ]$ S( }  E* z$ @                return getActivity();! i+ |9 D' E4 c. u, {$ r
        }
3 _& f; t: o+ J# ~4 P
9 p: W! i' K" z# s        public static void main(String[] args) {+ |% o/ n4 H6 d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);5 ]( [* p& v: z
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
2 Q+ r% P3 l+ s8 J; P8 ^                swarms.buildObjects();( u; P7 b7 G, r! l
                swarms.buildActions();
6 B. h$ V) x: ~  ]4 w                swarms.activateIn(null).run();: ?. N! R' y6 e# s& t" s& L. ^
        }
; E& F1 k* n$ W% _! E* W, S, j4 q& C' i/ I
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-7 11:19 , Processed in 0.018101 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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