设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6952|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 + l7 [! E# W, ?! I* b# j

3 W! |$ E- s- v2 D. M本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) w# @& _% O& h
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
, E# ]4 C; [% _5 Aswarm.SignatureNotFoundException7 D! ~; e: p# R7 }7 {. Y
        at swarm.Selector.<init>(Selector.java:76)) n; t7 V' y) O/ s$ r  O5 [% g# R( n
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)2 ^, M$ `# j- c' x% d, O
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ n1 G& U3 u$ n9 x* X
* j! ^3 w. y/ ^5 {7 q6 V
' ]4 K$ [. Z% [1 r# d# `import swarm.objectbase.SwarmImpl;
+ Z* t  K4 d, k$ S7 G1 Fimport swarm.objectbase.Swarm;0 a6 J& r5 P3 q& T) r  K
import swarm.activity.ScheduleImpl;
0 ~/ t/ G: g- wimport swarm.activity.Activity;
0 E/ U7 L9 d! K3 w8 o2 iimport swarm.activity.ActionGroupImpl;. P) R  ?+ D0 a
import swarm.collections.ListImpl;: u, N/ R, G% t6 @
import swarm.defobj.Zone;
; Z7 y3 [' w" s$ `3 x8 w7 P. Dimport swarm.Globals;: |2 Q$ ^  m5 ?$ `
import swarm.Selector;: ?, B# m, B4 N' W: i7 ~7 C( I
import swarm.activity.ActionGroup;
6 W" N7 e3 p7 I, {$ r5 @% c/ ^class Agent {
$ N! |  ]$ X! m+ W. v        char id;- ~# b, l, k! e3 S3 l

) h' d& D7 m8 \# b: Y        Agent(char id) {
$ E% ]: f* Q/ g! ]                this.id = id;$ V: m9 G+ w1 Z, T
        }
: z! y7 A7 @% I8 p. j' P1 K/ [% p# \# E0 L
        public void agentStep() {- t( H: ~. O! j$ A7 r
                System.out.println(id + ":" + Globals.env.getCurrentTime());
- O% O, {/ i2 |2 o5 i# `        }
( E. ~# Q) c/ {$ a5 q$ b+ F6 r}
6 o8 A! _9 }! u3 ?1 n; y+ g6 T$ `8 r% U, q( f; s3 m
public class ActionGroupDemo extends SwarmImpl {; ?, ?9 V2 J# E0 s/ L
        ScheduleImpl schedule;
" c0 l6 Y$ h1 \& d# L        ActionGroupImpl actionGroup;9 X* l( C* x- |. R& L/ X
        ListImpl list;
+ |) c! V; i/ w- ?' ~        char Id = 'a';
9 B$ u* `0 ~  _( R% B5 Z) j; ~# V/ ?1 o
$ _' e# C! I+ `9 b+ b& N5 Q- l        ActionGroupDemo(Zone aZone) {
# ?7 c5 N0 L! y4 |( k1 k; R                super(aZone);6 G4 \3 ~/ Q1 Y! o
                list = new ListImpl(aZone);
1 H" f& T2 e3 S# V% O' w$ ?                swarmSetp();; [1 ^) c9 S# f" _
                actionGroup = new ActionGroupImpl(aZone);
! x9 P/ r1 C& X! G                schedule = new ScheduleImpl(aZone);
/ t2 s3 ~7 k2 Q3 }                try {
; ^! N7 N0 W! l. y( [                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
* J, [* [" H! V3 N& H. B/ @; _                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
, `* x& ?% n/ X  p& r, b                        
) R2 j9 T& |4 c& {3 R                        actionGroup.createActionForEach$message(list, agentSel);
+ a5 y7 M  z+ r" n                        actionGroup.createActionTo$message(this, swarmSel);
$ S. F% [" T3 t8 c( W' [% n) Z3 f                        schedule.at$createAction(0, actionGroup);
  A% a* v' \4 G. g; C                        schedule.at$createAction(1, actionGroup);' k9 h* }4 s3 C3 O* A: t" ]  F# Q% f
                        schedule.at$createAction(2, actionGroup);' H9 C0 r! D4 K

' [/ U8 C( _6 E                } catch (Exception e) {, C" Z) o% l) {. C% i- r
                        e.printStackTrace(System.err);
- x; z$ J' A% x' W& P# D3 R" l                        //System.out.println(e);
7 g, h) n* S: F/ }                        System.exit(1);- v7 {, E6 D+ p- e: }
                }0 S0 m6 Z9 U, D9 {" w+ ?" ]

# h; Y  _& n5 U" n/ l
; F& c3 ]$ V) D4 M; d) f        }1 a4 _' U3 g9 v- _

( D  {5 q% |3 n' d        private void swarmSetp() {- c. L; D3 q% n  d" T6 [5 S4 C
                list.addLast(new Agent(Id));
, Q0 s. I/ g2 F( I& A* f/ e4 O                Id++;
$ q7 n) |. @/ b, W, g/ w% t, {        }8 `6 }/ ^% P7 f

6 D. n0 E# G" A) M* {% k! M2 I        public Activity activateIn(Swarm context) {. h5 Q- N" P! p
                super.activateIn(context);
7 L( ?- b" X  \: D/ {0 W% b                schedule.activateIn(this);* |4 {9 b6 Z# ^0 i" Q
                return getActivity();
  f4 F7 ~% X6 B0 D& P5 L        }
7 _0 V7 K4 d+ f/ c
# \7 p0 k" z% @6 K- B        public static void main(String[] args) {
$ ]- v+ c! m& v. y) e, w$ ?                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
* Y% }, P  {5 x3 E$ O2 K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);' J9 Z, U! y! m
                swarms.buildObjects();
; A. p; e% N3 U  Y  e                swarms.buildActions();
% u, A; k5 ]& t4 n' {8 k8 e. t                swarms.activateIn(null).run();
8 D" j# C" V2 |* S$ H        }
/ K! r+ w6 ]' @5 B1 j  E8 p8 _- l) r# T7 d% j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-14 11:06 , Processed in 0.019599 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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