设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13013|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 0 X4 J  T) U5 Y, t' V# q; t2 B

& V3 H; e5 m* s6 F本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
2 @& ]5 u+ b, h  E/ c+ i9 A以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# K  F' I- K& J1 o& ]swarm.SignatureNotFoundException
- B+ x4 g9 N1 ~" z        at swarm.Selector.<init>(Selector.java:76)
1 r+ g) ~7 O( J7 Y% k6 g* z        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)7 }: y  K4 b1 @6 C% E7 A" j( q$ u
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( l7 c$ _% W$ a# e0 ^
* R( }. n3 \) _% G; l& o3 k) o# V& l1 J0 f. p
import swarm.objectbase.SwarmImpl;
- j1 f9 o4 M# h( rimport swarm.objectbase.Swarm;& m" ~5 ~6 B. n6 ]* ~8 O! B
import swarm.activity.ScheduleImpl;' c' c: [. C/ S% p& U& g' N7 e
import swarm.activity.Activity;
2 q; f+ i1 I, `1 cimport swarm.activity.ActionGroupImpl;
' C+ V  {/ ]6 N& h% `: kimport swarm.collections.ListImpl;. ]3 ?3 f6 Y, G; s: |% T
import swarm.defobj.Zone; 7 D; V, f! S$ O% G, _
import swarm.Globals;
, q' O3 J- G7 ^0 Qimport swarm.Selector;
8 @) l" @  _6 Y! o9 fimport swarm.activity.ActionGroup;
- o) r' f& x4 U. k! T% L% Jclass Agent {
  D( s) B, q2 q  j' ^! p$ S! P        char id;! @9 U( j7 v$ X

( ]6 L6 N! P6 Z. e' l4 y2 B  p/ z        Agent(char id) {
  B2 j- S+ x) L/ _1 g+ Y                this.id = id;
% f; _3 m0 `3 f' p: Z. a        }* }: s6 ^6 R* N
. G- |! T; {/ c0 [4 Y. ]+ _2 Q6 q
        public void agentStep() {
) g" L" Z4 H, i9 u5 z# O+ i                System.out.println(id + ":" + Globals.env.getCurrentTime());* z- p& Z" |0 _9 C2 b4 v
        }0 Y) h4 O* |! x! a" T0 M$ ~- Y& `
}1 d  k+ S3 w, y$ S

" w! C1 y9 T" j* j1 s4 @public class ActionGroupDemo extends SwarmImpl {
1 _" l6 h* Q9 \' o  `% ^0 o$ a  ~        ScheduleImpl schedule;
* E: h5 B" `3 K% v! t        ActionGroupImpl actionGroup;8 J9 s8 w8 u% Z, C6 o; Q
        ListImpl list;
3 l" y+ B2 r3 H" {4 K$ v        char Id = 'a';1 S7 L7 R+ ~# a0 [
- b4 P- z/ b7 @% K" E8 I
        ActionGroupDemo(Zone aZone) {7 K5 e* F& |" r; {/ J" G' M
                super(aZone);; Q4 V) S- q0 V2 z
                list = new ListImpl(aZone);
: l* s1 X3 t2 m* Z/ u$ p                swarmSetp();* C0 r  x" e, n7 I2 j9 o4 u
                actionGroup = new ActionGroupImpl(aZone);2 S1 o& ^; _3 d3 z
                schedule = new ScheduleImpl(aZone);
$ Y: m3 \3 k+ m                try {
4 h- W9 S0 @2 |; R: t0 h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 k2 M. `9 L& y, @                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行8 D+ K2 @' t) D3 c
                        $ Q- I# _: R; F( y9 x( a
                        actionGroup.createActionForEach$message(list, agentSel);1 w! U6 v' l0 D" R' z
                        actionGroup.createActionTo$message(this, swarmSel);4 Y2 m, Y& X1 |9 L( F
                        schedule.at$createAction(0, actionGroup);
6 Y$ f' `! q4 a% E  i# f                        schedule.at$createAction(1, actionGroup);! @6 _) E* a/ U* l1 ?
                        schedule.at$createAction(2, actionGroup);8 Q6 _' e7 s8 i  q3 r/ v4 y+ f0 K
$ m4 q4 K1 D8 m( n/ t7 k
                } catch (Exception e) {8 |  e/ ~2 E9 I: j# `
                        e.printStackTrace(System.err);6 {' T3 g# x; P& U# X. ^0 ^
                        //System.out.println(e);  S; p5 y- J/ H. v8 C
                        System.exit(1);
7 e6 Q. w  @' `: U" M                }7 r; x1 z: j. `/ J. t
! S( m) M- v( a& q1 Z0 C% J
! C% ]9 ~) E! K4 \1 ?: M
        }
. P% Y9 r( O. R& w/ \* ^9 ^
8 H1 X4 p5 Z5 B$ ]3 [% F1 z        private void swarmSetp() {  D0 S0 N' [" H$ |' j9 y! s; V
                list.addLast(new Agent(Id));
+ e4 p/ T& q2 P9 t9 C  V                Id++;9 C+ f8 I$ i+ @+ f  [& d5 R7 ?' f
        }
! L- V* `! q0 q# i) I0 V, A) V8 t1 L3 d1 i  o! Y: S
        public Activity activateIn(Swarm context) {
9 q" }' k" L9 B9 \7 j  n5 v; ~                super.activateIn(context);
8 |$ [/ U/ x$ f" ^* u                schedule.activateIn(this);
+ o# F* I  J& A# k                return getActivity();5 Y8 M0 c6 n$ c  _+ {" x) i
        }4 s% D4 B. [' B! i, a3 ?
7 q, ^# |3 _5 ~+ o
        public static void main(String[] args) {
$ a3 B" Z, [8 S. V2 A- U. W) r                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
+ e0 M' w1 P1 x  c; Q5 W                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
9 q1 B! r! q2 E6 }4 x7 j, s' M                swarms.buildObjects();
7 _' u' G9 D& I; O4 ~7 n                swarms.buildActions();, j% m; S: e9 a1 s5 E
                swarms.activateIn(null).run();1 _2 D0 c5 T; n+ `% c- `0 q0 \
        }
! s( z; m2 I; ~: r) f
* H/ W$ B, B; m, B}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-25 23:50 , Processed in 0.017283 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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