设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7663|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + A" M& S5 t& o3 P

6 j. w% s3 t9 R! \本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ Z6 l/ q- q2 V  F$ q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
: W- t9 X( h4 s9 G6 x* dswarm.SignatureNotFoundException
. e! z/ U% M0 _6 U; c        at swarm.Selector.<init>(Selector.java:76)
3 U; e. Q9 q% W8 z8 ~- Q        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
( |2 Y0 o$ I+ l- p* R        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 A8 i9 H8 c% n- B' m) Z1 M- |5 M+ j- e6 x( H* Z
- m; U9 _1 p0 f+ I5 X
import swarm.objectbase.SwarmImpl;4 J! ]! u) K7 o9 [
import swarm.objectbase.Swarm;
3 n8 v0 O# x4 v3 m+ W8 [import swarm.activity.ScheduleImpl;2 l& {! f: j& Z
import swarm.activity.Activity;
" Y7 c" M6 t6 P1 Bimport swarm.activity.ActionGroupImpl;, k+ F% v* y# ]" f5 ]' D
import swarm.collections.ListImpl;' X! w& q5 R" G3 V* V1 X
import swarm.defobj.Zone;
+ n2 g3 u( A/ P" P9 timport swarm.Globals;
) m* A+ ?. k5 v- y: L) Yimport swarm.Selector;
' L2 b! `# F1 x& ?% eimport swarm.activity.ActionGroup; - L) R& g8 {% g
class Agent {4 i  y; L( M  I+ L
        char id;
9 S8 S# a0 W, `5 ]7 ^1 s
  v. @; t/ v) G; Z! s8 p  _        Agent(char id) {
8 M) D: [. p; P8 g; N  ?' Y                this.id = id;
! v' I# K! l6 H( C# b) s        }
6 z- b* |) W9 P# O, y# E3 n
! {) L9 r% W) `" G        public void agentStep() {
! v: m# j3 @5 b                System.out.println(id + ":" + Globals.env.getCurrentTime());
# y7 V3 N5 i6 }- Z* Q/ y1 Z        }
2 p- D$ |7 F; I5 i1 ~. C" F}% `0 I+ G, ?5 L+ Y
) G- U% f8 U! C9 m: Q- s
public class ActionGroupDemo extends SwarmImpl {7 f. g, k6 X2 ]
        ScheduleImpl schedule;
6 k& f! `1 e4 N7 I: R/ h        ActionGroupImpl actionGroup;
+ q! E' V* f8 Y- I        ListImpl list;
" w( N7 K' p% s$ u        char Id = 'a';: r' [! h& ~5 }( G# {+ w  M$ W6 Z
. R' s$ b! \5 |, u' N
        ActionGroupDemo(Zone aZone) {* R" f1 N% Z5 G
                super(aZone);3 L9 ^0 s8 G1 J" n
                list = new ListImpl(aZone);
7 }' K2 _+ U- t2 U! G9 u                swarmSetp();
9 Q) k5 j! v+ [7 Z: P                actionGroup = new ActionGroupImpl(aZone);
$ Y: |& \$ {. b5 k                schedule = new ScheduleImpl(aZone);6 e2 x. t' _" v& \0 _
                try {  O7 X5 |# i4 Z/ d
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);/ u# i& j. ^9 }1 F4 Z7 l
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 ]$ y% g4 b- A3 t' J1 e) W4 Y, l                        
. M  m3 }" ~. ?) S4 t                        actionGroup.createActionForEach$message(list, agentSel);6 I2 ]$ O- ]  l1 {' R
                        actionGroup.createActionTo$message(this, swarmSel);, K6 w0 k" F( l" ?1 K5 O: w
                        schedule.at$createAction(0, actionGroup);5 H% S  E: o$ }5 v2 V+ o( \
                        schedule.at$createAction(1, actionGroup);
& N3 K3 g& v5 T6 Y) W* T                        schedule.at$createAction(2, actionGroup);
* ^3 n1 }- `! s' p9 C0 u/ }; C8 q; `; v9 V" ^& r
                } catch (Exception e) {
! i: m" ], J: @1 s" Z  t' Y                        e.printStackTrace(System.err);) W. ?5 r' o* |
                        //System.out.println(e);
$ r! u2 N# J* ?* m/ a4 u& y* W                        System.exit(1);2 Z  ?% q' |# F+ t
                }. ]- `2 Y$ _# d4 r9 k
2 E8 V, \' J' ]

& H8 B- N0 z& D; t' b& Q        }+ H9 ^8 t9 k7 R
9 f9 ^# Q  Q& I0 P$ j- x5 H: p2 b4 F
        private void swarmSetp() {1 t  a" P! O, u$ \
                list.addLast(new Agent(Id));
7 ^. _: [$ K- r                Id++;
1 ?/ u3 |# N  x6 Q8 e) L  R4 n        }% X7 C( E* R$ O; k& @! F

& F2 o% G: `$ F7 r. Q1 ]        public Activity activateIn(Swarm context) {
0 {9 t4 h0 `4 ]                super.activateIn(context);1 t+ n$ ~  D& Q& p
                schedule.activateIn(this);
  L3 q% w) L7 v- m' b3 |2 S                return getActivity();/ }$ g' Z: ?2 ~6 x
        }
* f" i, x7 Q3 Z1 H  g
& z  K; D* y4 [  K5 i1 e        public static void main(String[] args) {
+ o( b# L+ I9 ]( g6 T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 v; Y# z  r( ~
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 X' U" N7 f0 R, z8 Q+ i0 f( Z# o0 @  Q                swarms.buildObjects();
( S) g  w4 }4 z/ ^! a2 M                swarms.buildActions();
; `, R; s- ~4 u' B. e                swarms.activateIn(null).run();
& K1 V0 k& Z' |  a5 T* p( N0 Y        }
$ G, F8 g( H3 K1 m6 ?
# g$ O, Q; c% G- Z% N0 I9 c}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-10 16:00 , Processed in 0.016770 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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