设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13211|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. V; A( l' ^. i7 e1 x* ]
$ F) ^, y8 B7 E2 x; `$ m' z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( Q- q2 z/ f$ t2 M  m以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
* d' y" Q# O0 i) G, Oswarm.SignatureNotFoundException
4 w! l1 _, I$ x6 d        at swarm.Selector.<init>(Selector.java:76)6 A, S9 S4 K# G9 I0 P$ c1 i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). \1 k  _  c3 y. d- |
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
- v1 p. ]  ]% m# E8 m0 D6 M/ {5 F5 ~0 S& L. X& g' H
2 d8 v& V+ {; y6 E& U7 v/ T
import swarm.objectbase.SwarmImpl;/ j/ O8 e1 d2 r; v6 L# p- U& T
import swarm.objectbase.Swarm;" @% K; U5 V  j; G! F/ I7 z+ _2 R
import swarm.activity.ScheduleImpl;
# t$ D$ J2 j. P5 u# eimport swarm.activity.Activity;$ }% l  L, y+ [6 T: ^
import swarm.activity.ActionGroupImpl;
5 G' p$ T; F3 M" D9 `$ oimport swarm.collections.ListImpl;
$ W1 W' n9 j7 A5 Himport swarm.defobj.Zone; & E5 F; }4 M9 _& `% c6 n0 B; E
import swarm.Globals;  t6 S; Y7 t5 B  u
import swarm.Selector;
: n) s2 g- B6 s6 }import swarm.activity.ActionGroup; 6 ~6 |9 k& Q; B# O/ `2 j$ N* f
class Agent {$ g: A) u+ D0 K; n3 b9 r6 {
        char id;3 @7 D, S- r0 O/ g5 `( v6 Y9 k

5 V# S# M* ^/ j9 T" N2 p5 N        Agent(char id) {7 m" n" S$ b1 b9 n& l9 S3 O
                this.id = id;
& x8 r6 Q, f* Y8 s5 o: Y9 I        }
+ p$ b# Q! G- m
& B9 u9 G$ M( f6 S: K        public void agentStep() {0 W+ i5 x$ z0 G2 S
                System.out.println(id + ":" + Globals.env.getCurrentTime());' ~" K% s' l2 c
        }' Z! \  m$ l- ^1 V
}6 u1 |+ B; \5 ?# V/ u
; m& h( c; d$ x2 f2 k
public class ActionGroupDemo extends SwarmImpl {& w! R8 `3 v# O. G. r, v
        ScheduleImpl schedule;, P# b/ {9 E) O/ U
        ActionGroupImpl actionGroup;
. \8 s; K% [- b        ListImpl list;% U5 {0 E+ Q& H( e
        char Id = 'a';
8 S* @0 n3 J9 x- `5 T: |
# j8 U  Y8 J5 b1 V6 _; g/ o, k* y        ActionGroupDemo(Zone aZone) {
5 N4 h* z; K  k: h- ], T# @                super(aZone);
  Z- q# ?+ }/ l  T0 O2 o$ L                list = new ListImpl(aZone);
' [% V4 g6 _" L                swarmSetp();
' ]* P# M( y0 X; j3 k                actionGroup = new ActionGroupImpl(aZone);
! U% d- [1 Y# f. P                schedule = new ScheduleImpl(aZone);
6 ^+ A, a5 |3 O! H+ g, C1 \% X                try {) B9 H+ F/ ]$ F4 i, q% G
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);( l! C- }/ \7 o6 @- m/ w2 X% P
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; U" }0 y* G3 Y. D( a! g, g/ S7 V                          u. q; _# r9 ]# V. l/ O6 r
                        actionGroup.createActionForEach$message(list, agentSel);0 x( _0 }  ~7 Q& H6 \
                        actionGroup.createActionTo$message(this, swarmSel);
7 b+ e' Q# M4 s$ u" u8 i                        schedule.at$createAction(0, actionGroup);
" d+ R5 l. K' Y; Z+ X                        schedule.at$createAction(1, actionGroup);: g+ i+ \3 m" N+ y5 U, G3 u
                        schedule.at$createAction(2, actionGroup);
- y3 s) e+ a- X: |  A, j
! `# P' P, C. K- @- Q$ f" }* Q                } catch (Exception e) {" K8 y/ [: V% d& \* h( M
                        e.printStackTrace(System.err);
: ]6 d' O& H, B0 E4 G                        //System.out.println(e);9 E( V# H+ f( o9 G1 x- B; T
                        System.exit(1);: u  G5 ^  K$ r* }! @8 ^
                }
: |' p: [+ e! B" z% ^7 P& K, b9 g

# u- y1 W5 |* U5 S* y        }/ X7 ], r1 c" r# L' L+ A

) h: Q% {5 N% j, @- D        private void swarmSetp() {
1 x# D5 ~5 V5 R! p" _1 C/ V7 A% _                list.addLast(new Agent(Id));. k+ @, G7 P3 q: G9 Y  {# x7 R
                Id++;8 T) I+ Z1 J$ \2 ?1 W
        }% \. N$ z$ I- A6 T; u  _) Z
% d  T3 q8 `! B" Q1 q
        public Activity activateIn(Swarm context) {
8 {# K. j. g  f/ P$ h( M0 W                super.activateIn(context);
* b& S3 X6 u0 B/ H: R* g9 e6 e                schedule.activateIn(this);
& n5 ]; \1 t- z9 C3 L                return getActivity();
* p+ o  M# v& h' B( j  ~        }
4 T( c/ [. e1 v: E; `2 ]! y) n+ |/ r- L' @, E- n* a" k
        public static void main(String[] args) {5 D, A# v- [0 L
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* g. e0 X8 |  h) ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);% H8 [7 s8 H0 j( e9 B: }. S4 I4 m
                swarms.buildObjects();# J2 Q& p6 d+ j1 c) u
                swarms.buildActions();) l" O. v" V( ?. E! b8 y
                swarms.activateIn(null).run();
% N/ k7 g/ I( ^0 v- ^# ~3 |3 _        }
0 ^+ U2 }$ b* g- C  h+ q
% e' o2 h0 `  V* A4 ~; w1 L}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-31 16:31 , Processed in 0.016184 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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