设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6839|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # q" x0 e) `5 @4 F! \

1 j9 C# F; u3 S5 s+ w( S本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
$ b9 p% |. w' i# q以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.+ L! ~9 a; g8 d" I( ?" c
swarm.SignatureNotFoundException
0 ?0 @/ X4 N" M2 @6 `- ]/ g        at swarm.Selector.<init>(Selector.java:76)
9 k0 m6 I6 ^% s6 v5 Z: k        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)6 n* f" S0 p# R: B( S; I# e
        at ActionGroupDemo.main(ActionGroupDemo.java:67)/ b: x; e1 g, p& \+ q
) F( V% K9 Q" o
% Q* W/ y  u8 o9 |
import swarm.objectbase.SwarmImpl;& a. h  H' A: W/ S: `% p. t8 T
import swarm.objectbase.Swarm;
9 B4 D2 p" r" v+ F: y5 x/ cimport swarm.activity.ScheduleImpl;
+ ?7 U/ R8 ^, a" T: Iimport swarm.activity.Activity;
( _2 F1 v( y2 J0 \( _import swarm.activity.ActionGroupImpl;% h) ~0 b( d: D0 A3 T- R
import swarm.collections.ListImpl;
  b5 `6 j( y( V' u  _8 uimport swarm.defobj.Zone; ) @! Y& T* M4 L) {
import swarm.Globals;
1 H, w  B2 [( q/ K' m$ Himport swarm.Selector;" V& A8 N+ w) m
import swarm.activity.ActionGroup;
/ l+ X, E5 @$ I3 {class Agent {4 a' q5 _# D' a( X- e+ ~! A$ K
        char id;! X. o9 r" Y8 }  r+ D

6 B. C7 N4 C6 ~  |$ y        Agent(char id) {) x9 N% r+ d9 [  c9 Z7 f. W# [6 P
                this.id = id;
. |* y+ B- p1 [5 e* `4 t" n3 c        }- k$ T! n4 W5 \/ w- J8 \0 e
# N- [3 A  W* S: F' J8 r$ d, W
        public void agentStep() {+ b) u. P& d3 R( N9 j+ a5 v8 h
                System.out.println(id + ":" + Globals.env.getCurrentTime());
; ^) L' z5 X/ N( j6 C& _- l        }6 n( v, T$ B. `$ B7 F
}5 c. V# E1 r5 ?
9 m& c; w8 d# ^9 g0 S9 a  x
public class ActionGroupDemo extends SwarmImpl {
3 u0 z$ |3 W! _2 \+ n) C        ScheduleImpl schedule;+ x. a) Z  g  H
        ActionGroupImpl actionGroup;; j# ]7 r  c& X
        ListImpl list;
4 Z4 c4 S' b; Z# h9 e" G' [        char Id = 'a';
: j, V" M. u. _
6 W3 D" |& B4 _  c        ActionGroupDemo(Zone aZone) {* W4 d' z6 i& J. w
                super(aZone);
( J2 _. o/ ~  M' D                list = new ListImpl(aZone);1 E  g! f  d$ J6 ?4 x; v
                swarmSetp();
5 G% Q; O: P. E                actionGroup = new ActionGroupImpl(aZone);) b' J: |/ o0 |6 h0 f$ G
                schedule = new ScheduleImpl(aZone);5 G" P+ `: P1 J+ U1 `5 q
                try {' c( \7 T% w: Q* o0 R
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);  r5 T: X2 X0 a8 A3 \
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行% f3 m; Q5 F4 e
                        4 }$ P: o- b8 [3 m
                        actionGroup.createActionForEach$message(list, agentSel);+ _) U+ [% _1 y) E( Y- `; E
                        actionGroup.createActionTo$message(this, swarmSel);
  }4 O7 f2 h' f# K) ^& z0 P1 W2 L) \                        schedule.at$createAction(0, actionGroup);
9 j* P0 f+ p  Z% o+ H5 f4 d& P                        schedule.at$createAction(1, actionGroup);
9 S. b! a7 \' D& a; j                        schedule.at$createAction(2, actionGroup);& h- `! j3 P- m" T1 l0 _

, F% R4 \: _4 x/ @( A                } catch (Exception e) {6 p, O* v# j: {" S+ G5 V
                        e.printStackTrace(System.err);" {6 J- O0 ^4 @) ^
                        //System.out.println(e);
( |# a% W$ m" e                        System.exit(1);9 I. r- t2 y9 q. w& N) p- r, e
                }  c# D# k' u6 T7 Y+ N3 ^* J- K
* g9 v8 N1 n" Y5 Z  k
" j# Y7 ]9 ^0 f
        }" \' ~' n$ N$ j1 F& O  f- X
) e* H) N' U, k' N3 g
        private void swarmSetp() {
% W* j4 _7 `8 i' ~( P2 W                list.addLast(new Agent(Id));# i# d. S: g5 U/ p$ z+ r8 ]( ^
                Id++;, G" U' ?$ J+ K4 ?( y
        }3 w; F% z* |, e
/ P: P) }1 P8 l) n% C
        public Activity activateIn(Swarm context) {
3 r1 g3 R. F# D  n, B                super.activateIn(context);
, h/ f( e( g: S+ _0 u. N0 q$ [2 Q3 ]                schedule.activateIn(this);
' W2 |# N' I+ [4 w! M                return getActivity();8 C) G  |4 J/ K) z( ]# M" ]  ^
        }7 V# E* z# R2 ~2 J
( G7 o7 ?( Q; h/ r
        public static void main(String[] args) {
& e! d$ o3 I* R( h. J6 x0 x                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
" G2 h- t, P) T) K                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
7 a  D4 O' m8 z6 d' F# ^2 J                swarms.buildObjects();% _! x, u; d* P
                swarms.buildActions();
" v/ |3 r) L& K2 N* h                swarms.activateIn(null).run();; E& M; J; h3 @: ~  k
        }
6 b* p2 v0 B) `$ \# ^! E, y
6 }# @- z2 P+ h( A( |, y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-2-10 16:58 , Processed in 0.017807 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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