设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5771|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
& l' b9 A. W; e6 N+ E* R3 f/ R" Y4 M' P. o/ r
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
9 _) F+ j, }9 q4 k0 Z9 d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
2 _$ B; g  T* F0 [& Sswarm.SignatureNotFoundException8 f9 h/ U# @5 N
        at swarm.Selector.<init>(Selector.java:76)' |- E& l7 y, L2 A& [
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& ?4 t, A8 _6 c! ]( z, u# k        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 p- ^' `1 v. C2 Q+ C$ Q+ n4 Y

: \6 L/ D! y  P2 `) T( H3 L" S( r1 M- o* v  K% }2 j* }0 r: n
import swarm.objectbase.SwarmImpl;
* `0 R0 z: ]' ximport swarm.objectbase.Swarm;  c7 I0 Q& D, f1 {4 |1 C
import swarm.activity.ScheduleImpl;; W* N( s9 A  F, y
import swarm.activity.Activity;, p& w2 e* F+ a: Z& Z' R
import swarm.activity.ActionGroupImpl;8 h% q% k+ U5 e/ U% d8 g) K, n
import swarm.collections.ListImpl;* ]0 ^8 T0 e* b2 |
import swarm.defobj.Zone; & C/ [! |4 ~% F" J
import swarm.Globals;( ~6 n8 E/ b& K+ N6 z) j
import swarm.Selector;8 g9 w/ W" x7 j/ [6 Q7 s
import swarm.activity.ActionGroup;
6 m8 b* B. T: t! {( W; F' nclass Agent {
6 j% E2 q% @/ P( H- D4 Q/ c* A        char id;+ o. D2 g* d$ c! ^6 g) Y. b% b
  ]. K. @& n! K$ r1 O$ |5 f2 V
        Agent(char id) {' n; t: f& d' J' H$ t+ h" W3 t
                this.id = id;
0 y' R: F6 |" P# R& u5 i% e        }! y* k: q6 y& u. {8 Z4 A9 Z) b

1 h" d: t8 Y' O" N' z( J        public void agentStep() {; U4 y1 E9 K/ V! W, ?- q1 H0 P5 T
                System.out.println(id + ":" + Globals.env.getCurrentTime());  f8 {$ E' T/ n7 |0 A; r0 p
        }4 X' p7 N6 R( ]1 w+ K; i
}6 `* D& _6 T0 [
, a7 j% Q; b' }
public class ActionGroupDemo extends SwarmImpl {
4 h5 `( i& W* n: M        ScheduleImpl schedule;
2 D2 J3 r# ]8 q8 K6 a+ u; }) b3 D        ActionGroupImpl actionGroup;+ g- B7 E& Z/ q) `1 {4 v
        ListImpl list;7 z9 n8 y8 W4 B
        char Id = 'a';) i9 X5 Y. p, }5 |8 u3 s
, C1 f* S# X' v/ Z; S- W% G
        ActionGroupDemo(Zone aZone) {
7 S! t7 M; s3 B0 a                super(aZone);
0 T! v" s  q5 O! ~                list = new ListImpl(aZone);- U, T/ W- f; S* L8 j$ |7 n( q
                swarmSetp();
/ z0 y- h9 ~, ^( C5 m                actionGroup = new ActionGroupImpl(aZone);1 o% X# r" U. k8 n" Y
                schedule = new ScheduleImpl(aZone);
  n  Y/ `% c0 l0 f0 u2 L' r                try {$ H: ~3 a) t$ G
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);. k' v% ]. q9 m" o& c
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
2 `7 @) J+ V0 B$ |, }# y& A                        
( ^: M  h. w3 _  `9 U) {                        actionGroup.createActionForEach$message(list, agentSel);
1 x3 `) _& c1 `: a  J" `                        actionGroup.createActionTo$message(this, swarmSel);
' v4 l! _. s# G2 `8 @* \# i8 Q4 \! @                        schedule.at$createAction(0, actionGroup);2 S8 H6 K6 J# S9 h" p6 f' ^9 w
                        schedule.at$createAction(1, actionGroup);7 J1 j& X" Z0 W, E4 S  g+ o
                        schedule.at$createAction(2, actionGroup);9 Y. u/ d9 ^& P; i+ a  @8 P" S
4 B6 P4 F* y. a, W9 E
                } catch (Exception e) {
" K' z3 z: Z, O; I# h                        e.printStackTrace(System.err);3 I5 D/ \3 r. p
                        //System.out.println(e);
0 u' i- d& [( ]/ C                        System.exit(1);7 B. T# ]' v: R, k$ @
                }
$ K4 {' T4 X2 N, X( q. C/ r5 Z$ h( X# _8 o, A8 t5 ~  z- F" ]3 x
1 @  _- I+ |: {5 Z0 F
        }: Y- W  S5 E- l" ?- a
6 i6 c! a2 B& Y" p$ |
        private void swarmSetp() {, O  e0 o" E) t- G8 q: |! N
                list.addLast(new Agent(Id));% t$ J5 }9 @2 ~
                Id++;
9 {8 v7 s4 B3 Y+ G% M        }
0 ~" Z" _& u  H3 q8 a+ ^- X5 B$ h" H' j
        public Activity activateIn(Swarm context) {+ g& z  G  I. p# Z0 j% f: Q
                super.activateIn(context);$ K, }& D% Y) X$ M: T
                schedule.activateIn(this);* Y5 ^( ~, P6 E2 J
                return getActivity();
& }; \/ g2 D3 U/ U2 [        }
, a, ]/ Y/ C" ^6 x/ P0 u* w  `4 e5 u: P$ _" n: p1 P
        public static void main(String[] args) {
/ c; C, V% L5 w) k3 X6 j0 E                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 q9 z& h1 [# n7 _2 q1 p, m3 @
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
( v7 o3 A$ b4 N2 U                swarms.buildObjects();
4 ~, X1 f5 {. a. N4 H                swarms.buildActions();- U- I/ t) C* M( Z& Y/ q4 o% {: D- N
                swarms.activateIn(null).run();2 B. U9 B% U  J4 r
        }
1 k9 g7 \* l8 \+ Y" D4 ^( T; S" j  v5 ^0 r4 C0 N$ ~
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-12-25 12:16 , Processed in 0.015626 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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