设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13961|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - C0 P: P* `) W0 j3 z' \

3 I9 V  [% {1 A本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
  {0 P* H9 m+ K+ Q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 G( U7 y" L) eswarm.SignatureNotFoundException
& H: y( ]3 Y7 }* z* r        at swarm.Selector.<init>(Selector.java:76)
: n4 v/ O% ~% |- K1 q1 B* m        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
2 p0 {$ Q9 V6 Q# e- w) t' @        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 X5 W1 N9 d& G3 D4 }* z5 |6 S& H$ v; B: }
! S) O5 z! X3 R; z# b
import swarm.objectbase.SwarmImpl;
  j# S/ B+ p/ @) [/ T' H9 a: Q+ ^import swarm.objectbase.Swarm;
3 ^3 c' n/ j7 v8 O8 k, ~& pimport swarm.activity.ScheduleImpl;" r7 {9 b  F+ n3 F% @* Z
import swarm.activity.Activity;
7 P9 X$ H. g; Rimport swarm.activity.ActionGroupImpl;
# v; y* A0 W* q# [; m/ fimport swarm.collections.ListImpl;9 u& k, O: j6 N' ^' R2 d# v
import swarm.defobj.Zone;   ^9 \  [* S  b4 K- E
import swarm.Globals;0 [& D6 s, `/ ^5 z7 G+ D: e
import swarm.Selector;2 p& {! n' g1 g$ r5 Q8 Q; W  J
import swarm.activity.ActionGroup; / [& A1 }% |, J" |6 w
class Agent {- ]! Q' N0 `; ~$ ~) k- ?& ~- {. T
        char id;
4 n2 L) Y# s. h
. B* a7 I! M- O6 J        Agent(char id) {
$ g) D/ M8 ~& R0 t1 w! J$ X                this.id = id;
( O. a; G+ H6 o" e9 G; o        }
5 r( z" D: b2 d* H
( ^2 O0 N& P! P6 H; }8 d" d        public void agentStep() {
5 i$ k5 L2 d* k- f5 S0 e6 t                System.out.println(id + ":" + Globals.env.getCurrentTime());
; \7 G& j, p9 O, ^4 Z        }
+ Z0 p/ A( B$ N* F. a}. y1 R) U; U8 K/ f; ~
# j0 C. H. M7 t0 [# M$ t
public class ActionGroupDemo extends SwarmImpl {
6 E! s0 W% K5 E3 d        ScheduleImpl schedule;$ l& t& p. A  j" a$ ?+ j
        ActionGroupImpl actionGroup;# ^0 u6 s6 G/ B, R! E9 A
        ListImpl list;
0 L9 ]* j! _$ ~9 l( p7 s$ ?, y7 p        char Id = 'a';
2 M, ?& T# H7 s* l0 [
$ q/ b5 w( c  V        ActionGroupDemo(Zone aZone) {
- n# X9 \/ E, i' T  G, J  J                super(aZone);6 V3 t- m4 L/ X8 @+ T- ]
                list = new ListImpl(aZone);
% p" a- _9 o& b- X$ d/ I                swarmSetp();
% r+ _( J5 j; k                actionGroup = new ActionGroupImpl(aZone);# d' S: ]5 n  R( H! A( q4 ?
                schedule = new ScheduleImpl(aZone);
: q( U; P; t2 f+ M3 O- c$ o& g                try {
3 {( w: R* E, [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
1 c+ M9 G: c. R+ p                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; {+ N' [* w! h8 `( w) G. C" E                        9 P0 r6 `9 z) ?: M
                        actionGroup.createActionForEach$message(list, agentSel);
3 M- M1 c* r, I0 g                        actionGroup.createActionTo$message(this, swarmSel);7 C; Q; L  p/ B) {; o( h/ ?5 s6 r
                        schedule.at$createAction(0, actionGroup);
; p* B( |/ L1 U                        schedule.at$createAction(1, actionGroup);- E0 k5 m7 F$ X3 C. ^; I( a
                        schedule.at$createAction(2, actionGroup);; C. I! E. k3 X  C) ~. Z4 i

! n4 c0 N( d; Y3 K% V                } catch (Exception e) {
. _9 c% p& F$ w5 f6 n5 `                        e.printStackTrace(System.err);1 ?2 C" m6 R; _/ Y5 y: h/ b
                        //System.out.println(e);
8 t: Q! C: A: G" r6 p) u                        System.exit(1);9 b* M3 R2 w+ C6 i. g3 K  ]3 ~5 }
                }. H2 l3 `+ N" V! M8 M3 b3 D

' H6 r7 P/ t1 K/ {0 F
0 O- B1 Y4 {, W- t# T        }( ]" K& s9 S/ l- I# j

# O$ }( y) Y6 X        private void swarmSetp() {
: s! X0 @6 P) y6 R                list.addLast(new Agent(Id));( t" P' B) |  A3 I3 j2 V5 l4 m
                Id++;
/ K3 ]+ m$ o* R" C% M) T% r: f/ f        }  D% k: q$ W8 F

4 p4 e, x# i( }( @& q9 Y7 O        public Activity activateIn(Swarm context) {0 N) m1 f( f$ p% P# Z1 g! ?
                super.activateIn(context);
! k) Z- X+ h! f2 h7 o. k                schedule.activateIn(this);
4 Q. {; h! c* @( X                return getActivity();# S1 V4 r$ ~. T, i+ c
        }" Y0 `  i' ~2 {2 H2 n

" j" G1 R; t5 _, z6 P& ?3 x        public static void main(String[] args) {
8 b2 d) m4 n" p9 U+ E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
  H, u4 j% i# e. p                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);8 X( C" |- A, j8 E  s4 U
                swarms.buildObjects();. ~8 H5 r6 G: S- u' _# O6 X$ g/ g* E! J
                swarms.buildActions();- C+ i/ D9 V$ Z
                swarms.activateIn(null).run();5 L# [+ ^. P# P
        }
8 c0 j+ o+ O0 i) A' W% [# W4 e, f" P% S6 v
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-23 01:58 , Processed in 0.016614 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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